У меня есть приложение, содержащее около 10 кнопок. На моем тестовом телефоне (HTC ONE X) все кнопки отображаются правильно. На моем другом тестовом телефоне (HTC Desire C) несколько кнопок находятся на экране. Нижние 2 кнопки и текстовые изображения отсутствуют.Android, как сделать кнопки подходят для разных размеров экрана
Как я могу сделать весь макет подходящим для разных размеров экрана? Должен ли я получать размер экрана во время выполнения, например, использовать getDisplayMetrics и т. Д.?
Заранее спасибо, Мэтт.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/carefreebgscaledlighting"
android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
android:id="@+id/textviewcompanyname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#003F87" />
<TextView
android:id="@+id/spacerasnexttextviewclasheswithbg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringloggedinscreen"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#003F87" />
<Button
android:id="@+id/buttonsignin"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringbuttonsignin" />
<Button
android:id="@+id/buttongetrota"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringbuttongetrota" />
<Button
android:id="@+id/buttongetphonenumbers"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringbuttongetphonenumbers" />
<Button
android:id="@+id/viewtransactionsactual"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="View Transactions" />
<Button
android:id="@+id/buttondeletecarertable"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringbuttondeletetable" />
<Button
android:id="@+id/buttonloadtransactionsmap"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringloadtransactionmap" />
<Button
android:id="@+id/buttonloneworker"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/buttonloneworker" />
<Button
android:id="@+id/buttonsendOutstandingTransactions"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringSendOutstandingTransactions" />
<Button
android:id="@+id/buttoncreatemanuallogout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/stringbuttoncreatemanuallogout" />
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/textViewYouAreSignedIn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_alignParentTop="true"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#FFFFFF"
/>
<TextView
android:id="@+id/textViewUnsentTransactions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_below="@id/textViewYouAreSignedIn"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#FFFFFF"
/>
<TextView
android:id="@+id/textViewVersionmenuscreen"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/stringtextviewversion"
android:layout_alignParentBottom="true"/>
</RelativeLayout>
</LinearLay
из>
Документация: http://developer.android.com/guide/practices/screens_support.html –
Лучший способ указать макет папки для различных размеров экрана. см. http://developer.android.com/guide/practices/screens_support.html – Opiatefuchs