Android视图与某些手机的布局两侧距离不同

时间:2014-05-14 03:52:07

标签: android layout

我有问题。我使用代码来实现像图像显示的布局,但在某些手机上,A部分不长作为B部分。

下面是代码和截屏图像。

如何解决这个问题?

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="top|left"
    android:orientation="vertical" >

    <FrameLayout
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginBottom="@dimen/tab_padding_bottom"
        android:background="@color/frame_bg"
        android:layout_gravity="top|left" >
    </FrameLayout>

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="@dimen/tab_padding_bottom"
        android:background="@drawable/tabbar_bg"
        android:layout_gravity="bottom"
         >

        <RadioGroup
            android:id="@+id/main_tab_group"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingBottom="5dp"
            android:orientation="horizontal" >

            <RadioButton
                android:id="@+id/tab_message"
                style="@style/tab_button_bottom"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:drawableTop="@drawable/message_tab_selector"
                android:text="@string/tab_message" 
                android:shadowDy="1"
                android:shadowColor="#ffffff"
            />

            <RadioButton
                android:id="@+id/tab_contact"
                style="@style/tab_button_bottom"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:drawableTop="@drawable/friend_tab_selector"
                android:text="@string/tab_contact" 
                android:shadowDy="1"
                android:shadowColor="#ffffff"
                />

            <RadioButton
                android:id="@+id/tab_find"
                style="@style/tab_button_bottom"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:drawableTop="@drawable/find_tab_selector"
                android:text="@string/tab_find"
                android:shadowDy="1"
                android:shadowColor="#ffffff"
                 />
        </RadioGroup>

        <TextView
            android:id="@+id/unread_num_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="62dp"
            android:layout_marginTop="7dp"
            android:background="@drawable/unread_count"
            android:gravity="center"
            android:textColor="#ffffffff"
            android:textSize="12sp"
            android:visibility="visible" 
            android:paddingLeft="6dp"
            android:paddingRight="6dp"/>
    </RelativeLayout>

</FrameLayout>

enter image description here

嗨,我有问题。我使用代码来实现像图像显示的布局,但在某些手机上,A部分不长作为B部分。

下面是代码和截屏图像。

如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

http://developer.android.com/guide/topics/ui/layout/linear.html

尝试使用layout_weight。 layout_weight定义控件必须分别为其他控件获取多少空间。

答案 1 :(得分:0)

检查以下XML,仅供参考。你需要将像ImageButton这样的东西改成Button等,但它会解决你的问题。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >


    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="60dp"
        android:background="#ffff" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="60dp" >

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center" >

                <ImageButton
                    android:id="@+id/image_agenda"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:adjustViewBounds="true"
                    android:src="@drawable/ic_launcher" />
            </LinearLayout>



            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center" >

                <ImageButton
                    android:id="@+id/image_month"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:adjustViewBounds="true"
                    android:src="@drawable/ic_launcher" />
            </LinearLayout>


            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center" >

                <ImageButton
                    android:id="@+id/image_day"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:adjustViewBounds="true"
                    android:src="@drawable/ic_launcher" />
            </LinearLayout>
        </LinearLayout>

</LinearLayout>