คำถามติดแท็ก orientation

การวางแนวคือวิธีขึ้นลงซ้ายหรือขวาของสิ่งที่หันหน้าเข้าหาหรือถือไว้โดยปกติคุณจะแยกความแตกต่างระหว่างแนวตั้ง (หรือแนวตั้ง) และแนวนอน (หรือแนวนอน)


11
บังคับโหมดการวางแนว "แนวตั้ง"
ฉันพยายามบังคับให้โหมด "แนวตั้ง" สำหรับแอปพลิเคชันของฉันเพราะแอปพลิเคชันของฉันไม่ได้ออกแบบมาสำหรับโหมด "แนวนอน" อย่างแน่นอน หลังจากอ่านฟอรัมฉันได้เพิ่มบรรทัดเหล่านี้ในไฟล์ Manifest: <application android:debuggable="true" android:icon="@drawable/icon" android:label="@string/app_name" android:screenOrientation="portrait"> แต่มันใช้ไม่ได้กับอุปกรณ์ของฉัน (HTC Desire) มันสลับจาก "แนวตั้ง" lo "แนวนอน" โดยไม่สนใจบรรทัดจากไฟล์รายการ หลังจากอ่านฟอรัมเพิ่มเติมฉันพยายามเพิ่มสิ่งนี้ในไฟล์รายการ: <application android:debuggable="true" android:icon="@drawable/icon" android:label="@string/app_name" android:configChanges="orientation" android:screenOrientation="portrait"> และฟังก์ชั่นนี้ในชั้นเรียนกิจกรรมของฉัน: public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } แต่โชคไม่ดีอีกครั้ง

8
งานพื้นหลังกล่องโต้ตอบความคืบหน้าการเปลี่ยนทิศทาง - มีวิธีแก้ปัญหาการทำงาน 100% หรือไม่
ฉันดาวน์โหลดข้อมูลบางส่วนจากอินเทอร์เน็ตในเธรดพื้นหลัง (ฉันใช้AsyncTask) และแสดงกล่องโต้ตอบความคืบหน้าขณะดาวน์โหลด การเปลี่ยนแปลงการวางแนวกิจกรรมจะเริ่มขึ้นใหม่จากนั้น AsyncTask ของฉันจะเสร็จสมบูรณ์ - ฉันต้องการยกเลิกกล่องข้อความ progess และเริ่มกิจกรรมใหม่ แต่บางครั้งการโทรเลิกใช้ Dialog ก็มีข้อยกเว้น (อาจเป็นเพราะกิจกรรมถูกทำลายและกิจกรรมใหม่ยังไม่ได้เริ่ม) วิธีที่ดีที่สุดในการจัดการปัญหาประเภทนี้คืออะไร (การอัปเดต UI จากเธรดพื้นหลังที่ทำงานแม้ว่าผู้ใช้จะเปลี่ยนการวางแนว) มีใครบางคนจาก Google ให้ "วิธีแก้ปัญหาอย่างเป็นทางการ" หรือไม่?

9
ฉันจะวางแนวหน้าจอปัจจุบันได้อย่างไร
ฉันต้องการตั้งค่าสถานะบางอย่างเมื่อการวางแนวของฉันอยู่ในแนวนอนเพื่อให้เมื่อกิจกรรมถูกสร้างใหม่ใน onCreate () ฉันสามารถสลับระหว่างสิ่งที่ต้องโหลดในแนวตั้งและแนวนอน ฉันมีเลย์เอาต์ xml ที่จัดการเลย์เอาต์ของฉันอยู่แล้ว public void onConfigurationChanged(Configuration _newConfig) { if (_newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { this.loadURLData = false; } if (_newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) { this.loadURLData = true; } super.onConfigurationChanged(_newConfig); } การกำหนดค่าที่มากกว่าการขี่เกินจะป้องกันไม่ให้ xml ของเค้าโครงที่ดินของฉันโหลดในแนวนอน ฉันแค่ต้องการวางแนวปัจจุบันของอุปกรณ์ของฉันใน onCreate () ฉันจะได้รับสิ่งนี้ได้อย่างไร

18
[UIScreen mainScreen] .bounds.size ขึ้นอยู่กับการวางแนวใน iOS8 หรือไม่?
ฉันรันรหัสต่อไปนี้ทั้งใน iOS 7 และ iOS 8: UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation]; BOOL landscape = (orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight); NSLog(@"Currently landscape: %@, width: %.2f, height: %.2f", (landscape ? @"Yes" : @"No"), [[UIScreen mainScreen] bounds].size.width, [[UIScreen mainScreen] bounds].size.height); ต่อไปนี้เป็นผลลัพธ์จาก iOS 8: Currently landscape: No, width: 320.00, height: 568.00 …

14
ฉันจะล็อคการวางแนวโหมดแนวตั้งในแอปพลิเคชันเว็บของ iPhone ได้อย่างไร
ฉันกำลังสร้างแอปพลิเคชันเว็บของ iPhone และต้องการล็อคการวางแนวเป็นโหมดแนวตั้ง เป็นไปได้ไหม มีส่วนขยายของชุดเครื่องมือทำเว็บหรือไม่ โปรดทราบว่านี่เป็นแอปพลิเคชันที่เขียนด้วย HTML และ JavaScript สำหรับ Mobile Safari ไม่ใช่แอปพลิเคชันทั่วไปที่เขียนด้วย Objective-C

20
Android WebView: การจัดการการเปลี่ยนแปลงการวางแนว
ปัญหาคือประสิทธิภาพการหมุนตาม WebView จะต้องโหลดหน้าซ้ำซึ่งอาจเป็นเรื่องน่าเบื่อ วิธีที่ดีที่สุดในการจัดการการเปลี่ยนแปลงการวางแนวโดยไม่ต้องโหลดหน้าซ้ำจากแหล่งที่มาในแต่ละครั้งคืออะไร

10
ฉันจะระบุเค้าโครงที่แตกต่างกันสำหรับแนวตั้งและแนวนอนได้อย่างไร
ฉันเห็นการอ้างอิงถึงความสามารถในการระบุไฟล์ xml เลย์เอาต์สองไฟล์แยกกันสำหรับกิจกรรมหนึ่งไฟล์สำหรับแนวตั้งและอีกไฟล์สำหรับแนวนอน ฉันไม่เคยพบข้อมูลใด ๆ เกี่ยวกับวิธีการทำเช่นนั้น ฉันจะระบุสำหรับแต่ละกิจกรรมที่ไฟล์ xml เป็นเค้าโครงแนวตั้งและเค้าโครงแนวนอนได้อย่างไร เป็นไปได้หรือไม่ที่จะระบุรูปแบบที่แตกต่างกันสำหรับขนาดหน้าจอที่แตกต่างกัน? ถ้าเป็นเช่นนั้นจะทำอย่างไร?

6
Android: xml เลย์เอาต์ทางเลือกสำหรับโหมดแนวนอน
ฉันจะมีเลย์เอาต์เดียวสำหรับแนวนอนและอีกแบบสำหรับแนวตั้งได้อย่างไร ฉันต้องการใช้ความกว้างพิเศษและประหยัดพื้นที่แนวตั้งเมื่อผู้ใช้หมุนโทรศัพท์ไปด้านข้าง

8
Android - ตัวอย่างกล้องอยู่ด้านข้าง
ฉันใช้ Preview เพื่อแสดงสิ่งที่กล้องเห็นบนหน้าจอ ฉันสามารถทำให้ทุกอย่างทำงานได้ดีสร้างพื้นผิวชุดพื้นผิวและพื้นผิวจะปรากฏขึ้น อย่างไรก็ตามจะแสดงภาพในมุม 90 องศาที่ไม่ถูกต้องเสมอในโหมดแนวตั้ง เช่นในภาพ: ฉันทราบว่าการใช้รหัสต่อไปนี้จะทำให้ภาพตรง: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); อย่างไรก็ตามฉันมีการแสดงตัวอย่างภายในกิจกรรมที่มีองค์ประกอบอื่น ๆ อยู่และมันไม่สมเหตุสมผลที่กิจกรรมของฉันจะแสดงในโหมดแนวนอน (ปิดใช้งานโดยค่าเริ่มต้น) ดังนั้นฉันจึงสงสัยว่ามีการเปลี่ยนทิศทางของ Preview หรือไม่? และปล่อยให้กิจกรรมที่เหลือของฉันแสดงอย่างถูกต้องในโหมดแนวตั้งหรือไม่? หรือจะหมุนตัวอย่างเพื่อให้แสดงอย่างถูกต้อง?

7
วงจรชีวิตของ Android Fragment เหนือการเปลี่ยนแปลงการวางแนว
การใช้แพ็คเกจความเข้ากันได้เพื่อกำหนดเป้าหมาย 2.2 โดยใช้ Fragments หลังจากเข้ารหัสกิจกรรมเพื่อใช้แฟรกเมนต์ในแอพแล้วฉันไม่สามารถรับการเปลี่ยนแปลงการวางแนว / การจัดการสถานะทำงานได้ดังนั้นฉันจึงสร้างแอพทดสอบขนาดเล็กที่มี FragmentActivity เดียวและ Fragment เดียว บันทึกจากการเปลี่ยนแปลงการวางแนวเป็นเรื่องแปลกโดยมีการเรียกหลายครั้งไปยังส่วน OnCreateView เห็นได้ชัดว่าฉันขาดอะไรบางอย่างเช่นการแยกชิ้นส่วนและติดตั้งใหม่แทนที่จะสร้างอินสแตนซ์ใหม่ แต่ฉันไม่เห็นเอกสารใด ๆ ที่จะระบุว่าฉันทำผิดพลาดตรงไหน ใครช่วยให้ความกระจ่างเกี่ยวกับสิ่งที่ฉันทำผิดที่นี่ได้โปรด ขอบคุณ บันทึกจะเป็นดังนี้หลังจากเปลี่ยนการวางแนว Initial creation 12-04 11:57:15.808: D/FragmentTest.FragmentTestActivity(3143): onCreate 12-04 11:57:15.945: D/FragmentTest.FragmentOne(3143): OnCreateView 12-04 11:57:16.081: D/FragmentTest.FragmentOne(3143): OnCreateView->SavedInstanceState null Orientation Change 1 12-04 11:57:39.031: D/FragmentTest.FragmentOne(3143): onSaveInstanceState 12-04 11:57:39.031: D/FragmentTest.FragmentTestActivity(3143): onCreate 12-04 11:57:39.031: D/FragmentTest.FragmentOne(3143): OnCreateView …

7
วิธีล็อคการวางแนวระหว่างรันไทม์
มีวิธีล็อคการวางแนวระหว่างรันไทม์หรือไม่? ตัวอย่างเช่นฉันต้องการอนุญาตให้ผู้ใช้ล็อกหน้าจอให้เป็นแนวนอนหากผู้ใช้อยู่ในแนวนอนและสลับตัวเลือกเมนู

4
ภาพรวมการวางแนวโทรศัพท์ Android รวมถึงเข็มทิศ
ฉันพยายามเอาหัวจับเซ็นเซอร์การวางแนว Android มาระยะหนึ่งแล้ว ฉันคิดว่าฉันเข้าใจแล้ว จากนั้นฉันก็รู้ว่าฉันไม่ได้ทำ ตอนนี้ฉันคิดว่า (หวังว่า) ฉันจะมีความรู้สึกที่ดีขึ้นอีกครั้ง แต่ฉันก็ยังไม่ 100% ฉันจะพยายามอธิบายความเข้าใจที่ขาด ๆ หาย ๆ ของฉันและหวังว่าผู้คนจะสามารถแก้ไขฉันได้หากฉันทำผิดในบางส่วนหรือเติมช่องว่างใด ๆ ฉันจินตนาการว่าฉันยืนอยู่ที่ 0 องศาลองจิจูด (เส้นเมริเดียนที่สำคัญ) และละติจูด 0 องศา (เส้นศูนย์สูตร) สถานที่นี้อยู่ในทะเลนอกชายฝั่งแอฟริกา แต่อดทนกับฉัน ฉันถือโทรศัพท์ไว้ข้างหน้าเพื่อให้ด้านล่างของโทรศัพท์ชี้ไปที่เท้าของฉัน ฉันหันหน้าไปทางทิศเหนือ (มองไปทางกรีนิช) ดังนั้นด้านขวามือของโทรศัพท์จึงชี้ไปทางตะวันออกไปทางแอฟริกา ในแนวนี้ (อ้างอิงจากแผนภาพด้านล่าง) ฉันมีแกน X ชี้ไปทางตะวันออกแกน Z ชี้ไปทางทิศใต้และแกน Y ชี้ไปที่ท้องฟ้า ตอนนี้เซ็นเซอร์บนโทรศัพท์ช่วยให้คุณสามารถกำหนดทิศทาง (ไม่ใช่ตำแหน่ง) ของอุปกรณ์ในสถานการณ์นี้ ส่วนนี้ทำให้ฉันสับสนมาตลอดอาจเป็นเพราะฉันต้องการเข้าใจว่าบางอย่างทำงานอย่างไรก่อนที่ฉันจะยอมรับว่ามันได้ผล ดูเหมือนว่าโทรศัพท์จะวางแนวโดยใช้เทคนิคสองอย่างร่วมกัน ก่อนที่ฉันจะไปถึงจุดนั้นลองนึกภาพว่ากำลังกลับมายืนบนผืนดินในจินตนาการที่ละติจูด 0 องศาและลองจิจูดในทิศทางที่กล่าวมาข้างต้น ลองนึกภาพว่าคุณถูกปิดตาและรองเท้าของคุณติดอยู่กับวงเวียนสนามเด็กเล่น หากมีคนผลักคุณไปด้านหลังคุณจะตกลงไปข้างหน้า (ไปทางทิศเหนือ) …

4
วิธีที่“ ถูกต้อง” ในการจัดการการเปลี่ยนแปลงการวางแนวใน iOS 8 คืออะไร?
ใครช่วยบอกวิธีการทำงานกับอินเทอร์เฟซแนวตั้งและแนวนอนที่ "ถูกต้อง" หรือ "ดีที่สุด" ได้ไหม ดูเหมือนว่าฟังก์ชันทั้งหมดที่ฉันต้องการใช้เพื่อจุดประสงค์นั้นจะเลิกใช้แล้วใน iOS 8 และการวิจัยของฉันก็ไม่มีทางเลือกที่ชัดเจนและสวยงาม ฉันควรจะดูที่ความกว้างและความสูงจริงๆเพื่อพิจารณาตัวเองว่าเราอยู่ในโหมดแนวตั้งหรือแนวนอน? ตัวอย่างเช่นในตัวควบคุมมุมมองของฉันฉันควรใช้ pseudocode ต่อไปนี้อย่างไร if we are rotating from portrait to landscape then do portrait things else if we are rotating from landscape to portrait then do landscape things

15
ปัญหาการวางแนวกล้องใน Android
ฉันกำลังสร้างแอพพลิเคชั่นที่ใช้กล้องถ่ายรูป นี่คือซอร์สโค้ดของฉันที่จะทำสิ่งนี้: File file = new File(Environment.getExternalStorageDirectory(), imageFileName); imageFilePath = file.getPath(); Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); //Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); startActivityForResult(intent, ACTIVITY_NATIVE_CAMERA_AQUIRE); ในonActivityResult()วิธีการฉันใช้BitmapFactory.decodeStream()เพื่อรับภาพ เมื่อฉันเรียกใช้แอปพลิเคชันบน Nexus one มันทำงานได้ดี แต่เมื่อฉันรันบน Samsung Galaxy S หรือ HTC Inspire 4G ทิศทางของภาพไม่ถูกต้อง ถ่ายภาพด้วยโหมดแนวตั้งภาพจริง (บันทึกในการ์ด SD) จะหมุน 90 องศาเสมอ ภาพตัวอย่างหลังถ่าย --------- ภาพจริงบนการ์ด SD จับภาพด้วยโหมดแนวนอนทุกสิ่งเป็นสิ่งที่ดี …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.