![](/img/trans.png)
[英]Same position for UI elements (buttons, image buttons) on all android devices
[英]android how to position elements to support in all devices
我對定位元素有疑問。
我想要的是無論屏幕大小如何,所有設備中的這張圖片。
我所擁有的是兩種不同尺寸的
我希望我的textViews和editTexts在活動視圖中保持其位置。 (imageView中的圖像“包含圖像的綠色,藍色,藍色,紅色,黃色正方形”)
這是我的layout.xml
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_height="30dp"
android:layout_width="150dp"
android:layout_marginTop="60dp"
android:layout_marginLeft="100dp"
android:textSize="19dp"
android:textStyle="bold"
android:gravity="center"
android:text="@string/login_app_name">
</TextView>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="20dp"
android:layout_marginTop="128dp"
android:gravity="center_vertical">
<TextView
android:layout_height="20dp"
android:layout_width="100dp"
android:layout_marginLeft="35dp"
android:textStyle="bold"
android:gravity="right|center_vertical"
android:text="@string/login_username">
</TextView>
<EditText
android:layout_height="20dp"
android:layout_width="140dp"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:background="@drawable/login_edit_text">
</EditText>
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="20dp"
android:layout_marginTop="2dp">
<TextView
android:layout_height="20dp"
android:layout_width="100dp"
android:layout_marginLeft="35dp"
android:textStyle="bold"
android:gravity="right|center_vertical"
android:text="@string/login_password">
</TextView>
<EditText
android:layout_height="20dp"
android:layout_width="140dp"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:background="@drawable/login_edit_text">
</EditText>
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
我懷疑問題與我用來定位元素的填充和邊距有關。 但是我找不到其他辦法。
有什么方法可以建議我的元素在所有屏幕尺寸上保持其位置?
為不同的設備制作單獨的xml文件,並為兩個xml分別放置圖像,以適應不同的標准分辨率。 鏈接兩個XML文件的兩個單獨的類,現在基於屏幕分辨率調用兩個類中的任何一個。 您可以使用以下代碼獲取屏幕資源:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
final int height = dm.heightPixels;
final int width = dm.widthPixels;
使用if-else條件並選擇要使用的類
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.