2012-06-19 2 views
0

여기 게시 됨 how-can-i-create-layout-for-both-320dp-and-360dp. 그 질문에서 나는 두 개의 버튼에 대한 간단한 예를 들었다. 하지만 이제는 320dp에 대한 레이아웃이 있었고 Motorola Atrix와 같은 360dp 레이아웃을 만들 수 없었습니다. 솔루션이 주어 졌기 때문에 LinearLayout과 관련된 레이아웃이었고 현재 레이아웃은 상대적입니다. 오른쪽의 공란을 피하거나 채울 수있는 방법은 무엇입니까?RelativeLayout에서 320dp 및 360dp 레이아웃을 모두 개발합니까?

layout.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" 
    android:background="@drawable/bg_tapfast" > 

    <ImageView 
     android:id="@+id/img_logomaior" 
     android:layout_width="@dimen/default_width_img_logomaior" 
     android:layout_height="@dimen/default_height_img_logomaior" 
     android:src="@drawable/img_logomaior" 
     android:layout_marginTop="@dimen/margin_top_img_logomaior" 
     android:layout_marginLeft="@dimen/margin_left_img_logomaior" 
     android:layout_alignParentLeft="true" />  

    <ImageView 
     android:id="@+id/img_mode_tapcolor" 
     android:layout_width="@dimen/default_width_mode_tapcolor" 
     android:layout_height="@dimen/default_height_mode_tapcolor" 
     android:src="@drawable/mode_tapcolor" 
     android:layout_marginTop="@dimen/margin_top_mode_tapcolor" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapcolor" />  

    <ImageView 
     android:id="@+id/img_mode_tapname" 
     android:layout_width="@dimen/default_width_mode_tapname" 
     android:layout_height="@dimen/default_height_mode_tapname" 
     android:src="@drawable/mode_tapname" 
     android:layout_marginTop="@dimen/margin_top_mode_tapname" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapname" />  

    <ImageView 
     android:id="@+id/img_mode_tapgroup" 
     android:layout_width="@dimen/default_width_mode_tapgroup" 
     android:layout_height="@dimen/default_height_mode_tapgroup" 
     android:src="@drawable/mode_tapgroup" 
     android:layout_marginTop="@dimen/margin_top_mode_tapgroup" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapgroup" />  

    <ImageView 
     android:id="@+id/img_tap_2be" 
     android:layout_width="@dimen/default_width_tap_2be" 
     android:layout_height="@dimen/default_width_tap_2be" 
     android:src="@drawable/tap_2be" 
     android:layout_alignParentBottom="true" 
     android:layout_marginLeft="@dimen/margin_left_tap_2be" /> 

    <ImageView 
     android:id="@+id/img_bt_howtoplay" 
     android:layout_width="@dimen/default_width_bt_howtoplay" 
     android:layout_height="@dimen/default_height_bt_howtoplay"  
     android:src="@drawable/bt_howtoplay"   
     android:layout_alignParentRight="true" 
     android:layout_alignParentBottom="true" /> 

</RelativeLayout> 

모토로라 ATRIX

Motorola Atrix

삼성 갤럭시 SII

Samsung Galaxy SII

답변

0

확실하게하려면 코드를 게시해야합니다.

그러나 당신은 당신의 RelativeLayout의이 같은 속성을 추가 할 수 있어야한다 :

android:gravity="center_horizontal" 

편집 : 난 당신이 자신의 레이아웃 내부에 3 ImageViews를 넣고 상단의 중력을 설정하면 생각 레벨 상위를 중앙 수평으로 설정하면 ImageViews가 서로 상대적으로 동일한 위치에 유지되지만, 일부 장치에서는 이미지 뷰를 스쿠트하므로 어떤 장치를 실행하든 상관없이 가운데에 배치됩니다. 이 같은

뭔가 :

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="center_horizontal" 
    android:background="@drawable/bg_tapfast" > 


    <RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     > 
    <ImageView 
     android:id="@+id/img_logomaior" 
     android:layout_width="@dimen/default_width_img_logomaior" 
     android:layout_height="@dimen/default_height_img_logomaior" 
     android:src="@drawable/img_logomaior" 
     android:layout_marginTop="@dimen/margin_top_img_logomaior" 
     android:layout_marginLeft="@dimen/margin_left_img_logomaior" 
     android:layout_alignParentLeft="true" />  

    <ImageView 
     android:id="@+id/img_mode_tapcolor" 
     android:layout_width="@dimen/default_width_mode_tapcolor" 
     android:layout_height="@dimen/default_height_mode_tapcolor" 
     android:src="@drawable/mode_tapcolor" 
     android:layout_marginTop="@dimen/margin_top_mode_tapcolor" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapcolor" />  

    <ImageView 
     android:id="@+id/img_mode_tapname" 
     android:layout_width="@dimen/default_width_mode_tapname" 
     android:layout_height="@dimen/default_height_mode_tapname" 
     android:src="@drawable/mode_tapname" 
     android:layout_marginTop="@dimen/margin_top_mode_tapname" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapname" />  

    <ImageView 
     android:id="@+id/img_mode_tapgroup" 
     android:layout_width="@dimen/default_width_mode_tapgroup" 
     android:layout_height="@dimen/default_height_mode_tapgroup" 
     android:src="@drawable/mode_tapgroup" 
     android:layout_marginTop="@dimen/margin_top_mode_tapgroup" 
     android:layout_marginLeft="@dimen/margin_left_mode_tapgroup" />  

    <ImageView 
     android:id="@+id/img_tap_2be" 
     android:layout_width="@dimen/default_width_tap_2be" 
     android:layout_height="@dimen/default_width_tap_2be" 
     android:src="@drawable/tap_2be" 
     android:layout_alignParentBottom="true" 
     android:layout_marginLeft="@dimen/margin_left_tap_2be" /> 

    <ImageView 
     android:id="@+id/img_bt_howtoplay" 
     android:layout_width="@dimen/default_width_bt_howtoplay" 
     android:layout_height="@dimen/default_height_bt_howtoplay"  
     android:src="@drawable/bt_howtoplay"   
     android:layout_alignParentRight="true" 
     android:layout_alignParentBottom="true" /> 


    </RelativeLayout> 

</RelativeLayout> 
+0

나는 그것이 문제가 아니라 생각 도움이 될 수 있습니다. 고정 크기 (dp)를 사용하고 있기 때문입니다. 그냥 내 질문을 정당화하기 위해 3 이미지가 있습니다. 자, 내 layout.xml을 한번보세요. – Gandarez

+0

3 개의 이미지를 자신의 하위 레이아웃에 넣으면 중앙의 수평 중력을 사용하여 가운데로 넘길 수 있습니다. 내 편집을 참조하십시오. – FoamyGuy

관련 문제