在android中设计线性布局

时间:2012-12-06 12:47:08

标签: android android-layout

我想在Android中使用线性布局设计以下设计 enter image description here

我写过以下代码但没有工作

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

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:layout_weight="1" >

                <ImageView
                    android:id="@+id/imageView1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:src="@android:drawable/alert_dark_frame" />           
                    <LinearLayout android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:weightSum="2" >
                            <TextView
                                android:id="@+id/textView1"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content" android:layout_alignParentLeft="true"
                                android:text="TextView" android:layout_weight="1" />        
                            <TextView
                                android:id="@+id/textView2" android:layout_weight="1"
                                android:layout_width="wrap_content" 
                                android:layout_height="wrap_content" android:layout_alignParentRight="true"
                                android:text="TextView" />
                    </LinearLayout>                
                <TextView
                    android:id="@+id/textView3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="TextView" android:hint="TestData"/>
            </LinearLayout>            
</LinearLayout>

它给我输出像

enter image description here

任何人都可以指出我..问题在哪里???

5 个答案:

答案 0 :(得分:3)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_weight="1"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@android:drawable/alert_dark_frame" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:weightSum="2" >

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="dfasdfasdfasfasf" />

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="right"
                android:text="07 DEc" />
        </LinearLayout>

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="dskfhasjkldfhadjklsfhadjklsfhajkldfhadjklsfhajklsfhajklsdfhajklsdfhajklsdfhajkldf" />
    </LinearLayout>

</LinearLayout>

这将有效......:)

答案 1 :(得分:0)

这应该有效。但是如果你使用RelativeLayout

会更好
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/white"
android:orientation="horizontal" >

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@android:drawable/alert_dark_frame" />

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:weightSum="2" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="TextView" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="TextView" />
    </LinearLayout>

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="TestData"
        android:text="TextView" />
</LinearLayout>

</LinearLayout>

答案 2 :(得分:0)

我认为您可以在第一级使用relativelayout,如下所示:

<relativelayout>
     <imageview align to parent top, left, bottom>
     <linearlayout align to parent to, right, right to image view>
          <textview1/>
          <textview2/>
     </linearlayout>
     <textview align to parent bottom, right, righto to image view, below linearlayout>
 </relativelayout>

答案 3 :(得分:0)

这对你有用。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffff"
    android:padding="5dip" >

    <ImageView
        android:id="@+id/icon"
        android:layout_width="70px"
        android:layout_height="50px"
        android:layout_marginRight="3dip"
        android:src="@drawable/ic_launcher" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/toptext"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:maxLines="1"
                android:text="dsggsdggfsgf"
                android:textColor="#000000"
                android:textSize="16px"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/datetext"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:maxLines="1"
                android:text="1 dec 2012"
                android:textColor="#cccccc"
                android:textSize="12px"
                android:textStyle="bold" />
        </RelativeLayout>

        <TextView
            android:id="@+id/bottomtext"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="dsggsdggfsgfwaffgdgafgggfdgfdgsfgfdgdfsgdfdsggsdggfsgfwaffgdgafgggfdgfdgsfgfdgdfsgdfdsggsdggfsgfwaffgdgafgggfdgfdgsfgfdgdfsgdfdsggsdggfsgfwaffgdgafgggfdgfdgsfgfdgdfsgdf"
            android:textColor="#696969"
            android:textSize="12px" />
    </LinearLayout>

</LinearLayout>

答案 4 :(得分:0)

   <?xml version="1.0" encoding="utf-8"?>
   <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"  android:layout_weight="1"
    android:layout_height="fill_parent" android:orientation="vertical">

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" android:weightSum="3" 
            android:orientation="horizontal">

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:src="@android:drawable/alert_dark_frame" 
                android:layout_weight="2"/>           
                <LinearLayout android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical" >
                        <LinearLayout android:layout_width="match_parent"
                             android:layout_height="wrap_content"
                             android:weightSum="3"
                             android:orientation="horizontal" >
                                <TextView
                                    android:id="@+id/textView1"
                                    android:layout_width="fill_parent"
                                    android:layout_height="wrap_content" 
                                    android:text="hfdfhfj" android:layout_weight="2" />        
                                <TextView
                                    android:id="@+id/textView2" android:layout_weight="1"
                                    android:layout_width="wrap_content" 
                                    android:layout_height="wrap_content"
                                    android:text="6 Dec 2012" />

                         </LinearLayout>
                         <LinearLayout android:layout_width="fill_parent"
                             android:layout_height="wrap_content">
                             <TextView
                                    android:id="@+id/textView3"
                                    android:layout_width="wrap_content"
                                    android:layout_height="wrap_content"
                                    android:text="fkjfkdsnfdsnfkdsn\nmnfkfknfkdf\nfknf" android:hint="TestData"/>
                         </LinearLayout>
                </LinearLayout>                

        </LinearLayout>            
   </LinearLayout>

试试这个代码。这正是你想要的。