您的位置:首页 > 移动开发 > Android开发

Android 布局 精准定位 平衡定位 相对定位

2015-07-30 17:48 726 查看
      由于第一次接触到这种商业的项目,很多界面的功能是实现了,比如长按弹出按钮,虚线划分界面等等,但最让我头疼的算是一个ListView里的许多view的定位问题,利用界面实时工具,再加上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_marginTop="10dp"
android:background="@color/background"
android:orientation="vertical" >

<!-- 添加横线 -->

<View
android:layout_width="wrap_content"
android:layout_height="1.2px"
android:layout_marginBottom="5dp"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp"
android:layout_marginTop="5dp"
android:background="@color/white" />

<RelativeLayout
android:id="@+id/orderposition_item"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:layout_margin="5dp"
android:layout_weight="0.06"
android:gravity="bottom"
android:orientation="horizontal" >

<TextView
android:id="@+id/instrument"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/text"
android:gravity="center_vertical|left"
android:paddingLeft="9.0dip"
android:text="EUR/JPY"
android:textColor="#ffffffff"
android:textSize="16dp" />

<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:paddingLeft="9.0dip"
android:text="單號    104395"
android:textColor="#fffffdfd"
android:textSize="12dp" />

<TextView
android:id="@+id/view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/expandable_toggle_button"
android:layout_alignRight="@+id/country"
android:text="2014-5-12 14:34"
android:textColor="#fffffdfd"
android:textSize="12dp" />

<TextView
android:id="@+id/diaius"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/expandable_toggle_button"
android:layout_toLeftOf="@+id/view"
android:paddingLeft="5dip"
android:text="GTW  "
android:textColor="#fffffdfd"
android:textSize="12dp" />

<TextView
android:id="@+id/country"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/view"
android:layout_marginRight="16dp"
android:text="500,000"
android:textColor="#ffffffff"
android:textSize="16dp" />

<TextView
android:id="@+id/buysell"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/instrument"
android:layout_alignBottom="@+id/instrument"
<span style="font-size:24px;color:#ff0000;background-color: rgb(255, 255, 102);">android:layout_centerHorizontal="true"</span>
android:paddingLeft="9.0dip"
android:text="賣出"
android:textColor="@color/buysell"
android:textSize="12dp" />

</RelativeLayout>

</LinearLayout>
        这里最想说的是:如何使一个textview能够正好居中,这样就不用使用相对布局,写很多代码,不妨试试这段属性值:
<span style="font-size:24px;color:#ff0000;background-color: rgb(255, 255, 102);">android:layout_centerHorizontal="true"能够让你的控件水平居中,可以解决如何界面在不同的设备上或者横竖屏时候的尺寸显示问题,肯定是居中的,不影响美观。</span>
       2.上述其他地方比如一些控件在屏幕左侧或者右侧,都可以使用:
<span style="font-size:24px;color:#33cc00;">android:gravity="center_vertical|left"</span>来实现,就不用调整间距之类。
       3.但使用这些属性对于非常复杂的列表展示来说,就显得力不从心了,界面如下:        界面总共有三列,最特殊的属于净卖出的字体,是跨越两行的,我在使用相对布局调整的时候,搞得有点焦头烂额,虽然你所看到的这个模拟器界面是显示正确了,不过一旦导入到真机里面,就会发现由于手机的分辨率都不同,还有获取的数字长度不一,显示出来的布局显得非常乱,根本没有这么完整,还有横屏的时候显示的就更不正常了:     正常的是下面两列,应该平分屏幕的尺寸,所以我就想到了是否能够使用这个属性: android:layout_weight="1"权重这个属性,修改之前的xml文件如下:
<?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_marginTop="10dp"
android:background="@color/background"
android:orientation="vertical" >

<!-- 添加横线 -->

<View
android:layout_width="wrap_content"
android:layout_height="1.2px"
android:background="@color/white" />

<!-- 第四行文字 -->

<RelativeLayout
android:id="@+id/expandable1"
android:layout_width="fill_parent"
android:layout_height="32dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="5dp"
android:orientation="horizontal" >

<TextView
android:id="@+id/instrument"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:paddingTop="5dip"
android:text="EUR/USD"
android:textColor="#ffffffff"
android:textSize="16sp" />

<TextView
android:id="@+id/netFloatPL"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/instrument"
android:layout_alignBottom="@+id/instrument"
android:layout_alignParentRight="true"
android:paddingLeft="9.0dip"
android:text="-3,990.00"
android:textColor="@color/falls"
android:textSize="16dp" />

<TextView
android:id="@+id/netLots"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="136dp"
android:paddingTop="5dip"
android:text="99,999,999"
android:textColor="#ffffffff"
android:textSize="16sp" />

</RelativeLayout>

<!-- 第二行 -->

<RelativeLayout
android:id="@+id/expandable2"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="5dp"
android:orientation="horizontal" >

<TextView
android:id="@+id/isNetBuysell"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:paddingTop="5dip"
android:text="净賣出"
android:textColor="#ffffffff"
android:textSize="16sp" />

<TextView
android:id="@+id/sellFloatPL"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/bidPrice"
android:layout_alignBottom="@+id/bidPrice"
android:layout_alignParentRight="true"
android:text="0.00"
android:textColor="#ffffffff"
android:textSize="12dp" />

<TextView
android:id="@+id/sellLots"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignTop="@+id/isNetBuysell"
android:layout_marginRight="40dp"
android:layout_toLeftOf="@+id/bidPrice"
android:text="1,500,000"
android:textColor="#ffffffff"
android:textSize="12dp" />

<TextView
android:id="@+id/sell"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/sellLots"
android:layout_alignBottom="@+id/sellLots"
android:layout_marginLeft="25dp"
android:layout_toRightOf="@+id/isNetBuysell"
android:paddingLeft="5dip"
android:text="賣出"
android:textColor="@color/buysell"
android:textSize="12dp" />

<!-- 第三行数据 -->

<TextView
android:id="@+id/askPrice"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignLeft="@+id/bidPrice"
android:layout_alignParentBottom="true"
android:layout_alignTop="@+id/buyLots"
android:paddingRight="30dip"
android:text="1.396034"
android:textColor="#ffffffff"
android:textSize="12sp" />

<TextView
android:id="@+id/buyFloatPL"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="-9,990.00"
android:textColor="@color/falls"
android:textSize="12dp" />

<TextView
android:id="@+id/bidPrice"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignBaseline="@+id/sellLots"
android:layout_alignBottom="@+id/sellLots"
android:layout_toLeftOf="@+id/sellFloatPL"
android:gravity="right"
android:paddingRight="30dip"
android:text="0.0000"
android:textColor="#ffffffff"
android:textSize="12dp" />

<TextView
android:id="@+id/buy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/sell"
android:layout_alignParentBottom="true"
android:paddingLeft="5dip"
android:text="買入"
android:textColor="@color/buysell"
android:textSize="12dp" />

<TextView
android:id="@+id/buyLots"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignRight="@+id/sellLots"
android:layout_alignTop="@+id/buy"
android:paddingLeft="40dip"
android:text="1,200,00000"
android:textColor="#ffffffff"
android:textSize="12dp" />

</RelativeLayout>

</LinearLayout>
     不过有一个前提是:首先声明只有在Linearlayout中,该属性才有效。之所以android:layout_weight会引起争议,是因为在设置该属性的同时,设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。如下所示,注意点使LineLayoutwidth属性应该为<LinearLayout        android:id="@+id/expandable3"        android:layout_width="fill_parent"        android:layout_height="wrap_content"         android:layout_weight="1"        android:layout_marginBottom="5dp"        android:layout_marginLeft="10dp"        android:layout_marginRight="10dp"        android:layout_marginTop="0dp"        android:orientation="horizontal" >因为这里有多个布局,使用其他的没有作用。      使用权重调整之后如下:  
<?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_marginTop="10dp"
    android:background="@color/background"
    android:orientation="vertical" >

    <!-- 添加横线 -->

    <View
        android:layout_width="wrap_content"
        android:layout_height="1.2px"
        android:background="@color/white" />

    <!-- 第一行文字 -->

    <!--<RelativeLayout
        android:id="@+id/expandable1"
        android:layout_width="fill_parent"
        android:layout_height="32dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="5dp"
        android:orientation="horizontal" >-->

    <LinearLayout
        android:id="@+id/expandable1"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="30dp"
        android:baselineAligned="false"
        android:layout_weight="1">

        <TextView
            android:id="@+id/instrument"
            android:layout_width="fill_parent"
            android:layout_weight="1"
            android:layout_height="fill_parent"
            android:paddingTop="5dip"
            android:paddingLeft="10dp"
            android:text="EUR/USD"
            android:textColor="#ffffffff"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/netLots"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:gravity="center"
            android:paddingTop="5dip"
            android:text="99,999,999"
            android:textColor="#ffffffff"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/netFloatPL"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:paddingRight="10.0dip"
            android:paddingTop="5dip"
            android:gravity="right"
            android:text="-3,990.00"
            android:textColor="@color/falls"
            android:textSize="16dp" />
    </LinearLayout>

    <!-- 第二行 -->

    <!--<RelativeLayout
        android:id="@+id/expandable2"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="0dp"
        android:layout_marginBottom="5dp"
        android:orientation="horizontal" >-->

    <LinearLayout
        android:orientation="horizontal"
        android:id="@+id/expandable2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1">

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

            <TextView
                android:id="@+id/isNetBuysell"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingTop="5dip"
                android:paddingLeft="8dip"
                android:text="净賣出"
                android:textColor="#ffffffff"
                android:textSize="16sp" />
            <TextView
                android:id="@+id/fuzhu"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingTop="5dip"
                android:text=""
                android:textColor="#ffffffff"
                android:textSize="16sp" />
        </LinearLayout>

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

            <TextView
                android:id="@+id/sell"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:paddingLeft="10dp"
                android:text="賣出"
                android:textColor="@color/buysell"
                android:textSize="12dp" />
            <TextView
                android:id="@+id/buy"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:paddingLeft="10dp"
                android:text="買入"
                android:textColor="@color/buysell"
                android:textSize="12dp" />
        </LinearLayout>

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

            <TextView
                android:id="@+id/sellLots"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingRight="20dp"
                android:gravity="right"
                android:text="1,500,000"
                android:textColor="#ffffffff"
                android:textSize="12dp" />

            <TextView
                android:id="@+id/buyLots"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingRight="20dp"
                android:gravity="right"
                android:text="1,200,0000"
                android:textColor="#ffffffff"
                android:textSize="12dp" />
        </LinearLayout>

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

            <TextView
                android:id="@+id/bidPrice"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingRight="20dp"
                android:gravity="right"
                android:text="0.0000"
                android:textColor="#ffffffff"
                android:textSize="12dp" />

            <TextView
                android:id="@+id/askPrice"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="30dp"
                android:paddingRight="20dp"
                android:gravity="right"
                android:text="1.396034"
                android:textColor="#ffffffff"
                android:textSize="12sp" />
        </LinearLayout>

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1">
            <TextView
                android:id="@+id/sellFloatPL"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:paddingRight="10.0dip"
                android:gravity="right"
                android:text="0.00"
                android:textColor="#ffffffff"
                android:textSize="12dp" />
            <!-- 第三行数据 -->

            <TextView
                android:id="@+id/buyFloatPL"
                android:layout_weight="1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:paddingRight="10.0dip"
                android:gravity="right"
                android:text="-9,990.00"
                android:textColor="@color/falls"
                android:textSize="12dp" />
        </LinearLayout>

    </LinearLayout>

</LinearLayout>
实现原理就是总的竖向划分为上下两部分,在下面的总的部分,再划分为5个部分,均分就可以。遇到数据需要右对齐的情况,先使textview里面text文字位置为right或者left、center,可以指定距离左右边距为一样的如:<span style="font-size: 12px;"> </span><span style="font-size:24px;color:#ff9900;"><strong><em>android:paddingRight="10.0dip"         android:gravity="right" //使textview或者其他空间的文字居右</em></strong></span>
<span style="font-size:24px;"><strong><em style="color: rgb(255, 153, 0);">   </em><span style="color:#999999;">操作的时候遇到这样的问题:如果布局或者textview的布局宽度不为</span></strong></span><pre name="code" class="html" style="color: rgb(255, 153, 0);">                android:layout_width="fill_parent"
                android:layout_height="fill_parent" 就不会平分。
<span style="color: rgb(255, 153, 0);">   </span><span style="color:#ffcc66;background-color: rgb(102, 102, 102);">因为:<span style="font-family: arial, 宋体, sans-serif, tahoma, 'Microsoft YaHei'; font-size: 14.44444465637207px; line-height: 23.99305534362793px;">fill_parent</span><br style="font-family: arial, 宋体, sans-serif, tahoma, 'Microsoft YaHei'; font-size: 14.44444465637207px; line-height: 23.99305534362793px;" /><span style="font-family: arial, 宋体, sans-serif, tahoma, 'Microsoft YaHei'; font-size: 14.44444465637207px; line-height: 23.99305534362793px;">设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。均分之后,势必让整个textview变大,所以需要使用这个属性。效果如下:</span></span>
<img src="https://img-blog.csdn.net/20150731113931812?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
<span style="font-size:24px;color:#33ff33;"><strong><em><u>横屏显示效果:</u></em></strong></span>
<img src="https://img-blog.csdn.net/20150731113948254?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
上面如果我不是均分的话,要按照比如划分的时候,有些控件会不显示在界面上,很显然是不正确的,<strong><span style="color:#999999;">这里还有一个问题就是:下列的两排显示虽然按照权重均分了,但要求其中的两个显示的小一点,又该如何划分权重呢:</span></strong>
<strong><span style="color:#999999;"><span style="color: rgb(85, 85, 85); font-family: simsun; font-size: 14px; line-height: 21px; background-color: rgb(213, 231, 183);">按比例显示LinearLayout内各个子控件,需设置android:layout_width="0dp",如果为竖直方向的设置android:layout_height="0dp"。在这种情况下某子个控件占用LinearLayout的比例为:本控件weight值 / LinearLayout内所有控件的weight值的和。</span></span></strong>
<span style="font-family:simsun;"><span style="font-size: 14.44444465637207px; line-height: 20.98958396911621px;"><span style="color:#555555;font-weight: bold;">知道这些之后,我们就得把第二行显示的各个linerLayout的</span></span></span><pre name="code" class="html" style="font-weight: bold; color: rgb(85, 85, 85);"><strong><span style="color:#999999;"><span style="color: rgb(85, 85, 85); font-family: simsun; font-size: 14px; line-height: 21px; background-color: rgb(213, 231, 183);">android:layout_width="0dp"设置成这样的,设置完之后,就可以真正意义的按照比例来划分整个显示的比例,上述xml代码调整如下,成功解决:</span></span></strong>
<span style="font-family: simsun; font-size: 14px; line-height: 21px; background-color: rgb(213, 231, 183);"></span><pre name="code" class="html"><span style="color:#555555;font-weight: bold;"><?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_marginTop="10dp"android:background="@color/background"android:orientation="vertical" ><!-- 添加横线 --><Viewandroid:layout_width="wrap_content"android:layout_height="1.2px"android:background="@color/white" /><LinearLayoutandroid:id="@+id/expandable1"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="30dp"android:baselineAligned="false"android:layout_weight="1"><TextViewandroid:id="@+id/instrument"android:layout_width="fill_parent"android:layout_weight="1"android:layout_height="fill_parent"android:paddingTop="5dip"android:paddingLeft="10dp"android:text="EUR/USD"android:textColor="#ffffffff"android:textSize="16sp" /><TextViewandroid:id="@+id/netLots"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"android:paddingTop="5dip"android:text="99,999,999"android:textColor="#ffffffff"android:textSize="16sp" /><TextViewandroid:id="@+id/netFloatPL"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="fill_parent"android:paddingRight="10.0dip"android:paddingTop="5dip"android:gravity="right"android:text="-3,990.00"android:textColor="@color/falls"android:textSize="16dp" /></LinearLayout><!-- 第二行 --><LinearLayoutandroid:orientation="horizontal"android:id="@+id/expandable2"android:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_weight="1"><LinearLayoutandroid:orientation="vertical"android:layout_width="0dp"android:layout_height="fill_parent"android:layout_weight="0.8"><TextViewandroid:id="@+id/isNetBuysell"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingTop="5dip"android:paddingLeft="8dip"android:text="净賣出"android:textColor="#ffffffff"android:textSize="16sp" /><TextViewandroid:id="@+id/fuzhu"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingTop="5dip"android:text=""android:textColor="#ffffffff"android:textSize="16sp" /></LinearLayout><LinearLayoutandroid:orientation="vertical"android:layout_width="0dp"android:layout_height="fill_parent"android:layout_weight="0.3"><TextViewandroid:id="@+id/sell"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="fill_parent"android:paddingLeft="10dp"android:text="賣出"android:textColor="@color/buysell"android:textSize="12dp" /><TextViewandroid:id="@+id/buy"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="fill_parent"android:paddingLeft="10dp"android:text="買入"android:textColor="@color/buysell"android:textSize="12dp" /></LinearLayout><LinearLayoutandroid:orientation="vertical"android:layout_width="0dp"android:layout_height="fill_parent"android:layout_weight="1"><TextViewandroid:id="@+id/sellLots"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingRight="20dp"android:gravity="right"android:text="1,500,000"android:textColor="#ffffffff"android:textSize="12dp" /><TextViewandroid:id="@+id/buyLots"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingRight="20dp"android:gravity="right"android:text="1,200,0000"android:textColor="#ffffffff"android:textSize="12dp" /></LinearLayout><LinearLayoutandroid:orientation="vertical"</span><span style="color:#ff0000;">android:layout_width="0dp"</span><span style="color:#555555;font-weight: bold;">android:layout_height="fill_parent"android:layout_weight="0.8"><TextViewandroid:id="@+id/bidPrice"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingRight="20dp"android:gravity="right"android:text="0.0000"android:textColor="#ffffffff"android:textSize="12dp" /><TextViewandroid:id="@+id/askPrice"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="30dp"android:paddingRight="20dp"android:gravity="right"android:text="1.396034"android:textColor="#ffffffff"android:textSize="12sp" /></LinearLayout><LinearLayoutandroid:orientation="vertical"android:layout_width="0dp"android:layout_height="fill_parent"</span><span style="color:#ff0000;">android:layout_weight="1"></span><span style="color:#555555;font-weight: bold;">            <TextViewandroid:id="@+id/sellFloatPL"android:layout_weight="1"android:layout_width="fill_parent"android:layout_height="fill_parent"android:paddingRight="10.0dip"android:gravity="right"android:text="0.00"android:textColor="#ffffffff"android:textSize="12dp" /><!-- 第三行数据 --><TextViewandroid:id="@+id/buyFloatPL"</span><span style="color:#ff0000;">android:layout_weight="1"</span><span style="color:#555555;font-weight: bold;">android:layout_width="fill_parent"android:layout_height="fill_parent"android:paddingRight="10.0dip"android:gravity="right"android:text="-9,990.00"android:textColor="@color/falls"android:textSize="12dp" /></LinearLayout></LinearLayout></LinearLayout></span>
效果如下:
<strong><span style="color:#999999;"><span style="color: rgb(85, 85, 85); font-family: simsun; font-size: 14px; line-height: 21px; background-color: rgb(213, 231, 183);"><img src="https://img-blog.csdn.net/20150731115833068?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></span></span></strong>
<span style="font-family:simsun;">可以看到卖出的比例是明显比其他小的。</span>
<span style="font-family:simsun;">   看来针对普通的布局,使用linerlayout 或者RelativeLayout相结合的方式是可以搞定的,如果遇到比例不同需要多行显示的情况,建议使用</span>
<span style="color: rgb(85, 85, 85); font-family: simsun; font-size: 14.44444465637207px; line-height: 20.98958396911621px; white-space: pre; background-color: rgb(240, 240, 240);"></span><pre name="code" class="html"><span style="color: rgb(153, 153, 153);"><span style="color: rgb(85, 85, 85); font-family: simsun; font-size: 14px; line-height: 21px; background-color: rgb(213, 231, 183);"></span></span><pre name="code" class="html"> android:layout_weight="1",记得布局<pre name="code" class="html" style="font-size: 14.44444465637207px; line-height: 20.98958396911621px;"><span style="color:#ff0000;">android:layout_width="0dp"这个属性设置为0dp,才能很好的按照比例划分区域,如果不是这个,就只能均分。</span><pre name="code" class="html" style="font-size: 14.44444465637207px; line-height: 20.98958396911621px;"><span style="color:#555555;"><strong>android:orientation="vertical" >这个属性决定布局的方向是否为水平和垂直</strong></span>
结合间距、文字位置,就可以完成复杂布局的布置。

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息