كيف يمكنني تحديد تخطيطات مختلفة لتوجهات الصورة والمناظر الطبيعية؟
-
22-09-2019 - |
سؤال
لقد رأيت إشارات إلى القدرة على تحديد ملفين XML منفصلان للنشاط ، أحدهما للتصوير وواحد للمناظر الطبيعية. لم أذهب إلى العثور على أي معلومات حول كيفية القيام بذلك. كيف يمكنني تحديد كل نشاط هو ملف XML هو تخطيط صورة وأيها تخطيط المناظر الطبيعية؟
هل من الممكن أيضًا تحديد تخطيطات مختلفة لأحجام الشاشة المختلفة؟ اذا هو كذلك، كيف يعمل هذا؟
المحلول
إنشاء layout-land
الدليل ووضع نسخة المشهد من ملف XML تخطيطك في هذا الدليل.
نصائح أخرى
عليك فقط وضعه تحت مجلدات منفصلة بأسماء مختلفة حسب الاتجاه والدقة ، وسيقوم الجهاز تلقائيًا بتحديد الجهاز المناسب لإعدادات الشاشة الخاصة به
مزيد من المعلومات هنا:
http://developer.android.com/guide/practices/screens_support.html
تحت "مؤهلات دليل الموارد لحجم الشاشة وكثافة"
لعشاق الماوس! أقول انقر بزر الماوس الأيمن على مجلد الموارد و Add new resource file
, ومن المؤهلات المتاحة حدد orientation
:
ولكن لا يزال بإمكانك القيام بذلك يدويًا عن طريق القول ، وإضافة "Layout-Land" للمجدول الفرعي إلى
"الخاص بك الدليل app src main res"
ومنذ ذلك الحين ، سيعمل أي ملف تخطيط. تلقائيا.
استخدم "تخطيط المنفذ" لوضع الصورة.
فقط للتذكير:
إزالة orientation
من android:configChanges
تنسب للنشاط في بيانك xml
ملف إذا حددته:
android:configChanges="orientation|screenLayout|screenSize"
إنشاء دليل جديد layout-land
, ، ثم إنشاء xml
ملف بنفس الاسم في layout-land
كما كان layout
الدليل ومحاذاة المحتوى الخاص بك لوضع المناظر الطبيعية.
لاحظ أن معرف المحتوى في كليهما xml
هو نفسه.
أو استخدم هذا:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:scrollbars="vertical"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- Add your UI elements inside the inner most linear layout -->
</LinearLayout>
</ScrollView>
أعتقد أن أسهل طريقة في أحدث إصدارات Android هي الذهاب إلى وضع تصميم XML (وليس النص).
ثم من القائمة ، حدد الخيار - إنشاء تباين المناظر الطبيعية. سيؤدي ذلك إلى إنشاء مشهد XML دون أي متاعب في بضع ثوان. يتيح لك أحدث إصدار من Android Studio إنشاء طريقة عرض للمناظر الطبيعية على الفور.
آمل أن يكون هذا يصلح لك.
السطر الأخير أدناه هو مثال لتطبيق اثنين من الكميات: المناظر الطبيعية وأصغر عرض(600dp) الشاشة. تحديث 600dp مع تلك التي تحتاجها.
res/layout/main_activity.xml # For handsets
res/layout-land/main_activity.xml # For handsets in landscape
res/layout-sw600dp/main_activity.xml # For 7” tablets
res/layout-sw600dp-land/main_activity.xml # For 7” tablets in landscape
ما ورد أعلاه ينطبق على Dimens أيضًا
res/values/dimens.xml # For handsets
res/values-land/dimens.xml # For handsets in landscape
res/values-sw600dp/dimens.xml # For 7” tablets
res/values-sw600dp-land/dimens.xml # For 7” tablets in landscape
مقاييس الجهاز المفيدة: https://material.io/tools/devices/