Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android上的线性布局问题_Android_Xml_Android Linearlayout_Orientation - Fatal编程技术网

Android上的线性布局问题

Android上的线性布局问题,android,xml,android-linearlayout,orientation,Android,Xml,Android Linearlayout,Orientation,我的目标是在标题、星星和想法的右边有一个TextView。 我通常知道如何使用orientation=“horizontal”进行此操作,但实际上这相当棘手,因为我看不出我做错了什么 这是我的密码: <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orie

我的目标是在标题、星星和想法的右边有一个
TextView
。 我通常知道如何使用
orientation=“horizontal”
进行此操作,但实际上这相当棘手,因为我看不出我做错了什么

这是我的密码:

<LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:background="@color/white">


                <LinearLayout
                    android:layout_width="match_parent"
                    android:orientation="vertical"
                    android:layout_height="match_parent">
                    <TextView
                        android:id="@+id/offertitle"
                        android:paddingTop="15dp"
                        android:paddingLeft="15dp"
                        android:paddingRight="15dp"
                        android:textSize="24dp"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textColor="@color/blue" />


                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:id="@+id/troisieme"
                        android:orientation="horizontal">
                        <ImageView
                            android:layout_width="wrap_content"
                            android:layout_height="15dp"
                            android:id="@+id/offerstars"
                            android:src="@drawable/stars" />
                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="match_parent"
                            android:gravity="center_vertical"
                            android:id="@+id/offerthoughts"
                            android:text="53 avis"
                            android:textColor="@color/blue" />
                    </LinearLayout>
                </LinearLayout>


                <TextView
                    android:layout_height="match_parent"
                    android:layout_width="wrap_content"
                    android:id="@+id/offer_price"
                    android:textColor="#000000"
                    android:gravity="right"
                    android:text="blablabla"
                    android:background="#D3D3D3"/>

这是一张图片:


包含标题等内容并与文本视图并排的版面的宽度设置为匹配父项,这是错误的。这里没有文本视图的空间,下面你已经修改了你的设计。它已将宽度设置为0dp,将重量设置为1——因此它填充了可用空间

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/colorWhite"
    android:orientation="horizontal">


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

        <TextView
            android:id="@+id/offertitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="15dp"
            android:paddingRight="15dp"
            android:paddingTop="15dp"
            android:textColor="@color/colorRed"
            android:textSize="24dp"/>


        <LinearLayout
            android:id="@+id/troisieme"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <ImageView
                android:id="@+id/offerstars"
                android:layout_width="wrap_content"
                android:layout_height="15dp"
                android:src="@drawable/ic_menu_start"/>

            <TextView
                android:id="@+id/offerthoughts"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:gravity="center_vertical"
                android:text="53 avis"
                android:textColor="@color/colorOrange"/>
        </LinearLayout>
    </LinearLayout>


    <TextView
        android:id="@+id/offer_price"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:background="#D3D3D3"
        android:gravity="right"
        android:text="blablabla"
        android:textColor="#000000"/>
</LinearLayout>

如果你想实现左部分和右部分,你可以使用RelativeLayout

如果您仍然希望在线性布局中执行,则应在其内部使用

你可以这样做

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/white">


    <LinearLayout
        android:id="@+id/lin_left"
        android:layout_toLeftOf="@+id/offer_price"
        android:layout_width="match_parent"
        android:orientation="vertical"
        android:layout_height="match_parent">

        <TextView
            android:id="@+id/offertitle"
            android:paddingTop="15dp"
            android:paddingLeft="15dp"
            android:paddingRight="15dp"
            android:textSize="24dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             />


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/troisieme"
            android:orientation="horizontal">
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="15dp"
                android:id="@+id/offerstars"
                android:src="@mipmap/ic_launcher" />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_vertical"
                android:id="@+id/offerthoughts"
                android:text="53 avis"
                android:textColor="@android:color/black" />
        </LinearLayout>
    </LinearLayout>


    <TextView
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_alignParentRight="true"
        android:id="@+id/offer_price"
        android:textColor="#000000"
        android:gravity="right"
        android:text="blablabla"
        android:background="#D3D3D3"/>

    </RelativeLayout>

试试这个。您可以使用
layout\u weight
weightSum
来管理版面中的部分。并将
width
设置为
0dp
,以便重量可以影响

<RelativeLayout 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="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="3"
    android:background="#FFFFF0"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="2"
        android:orientation="vertical">

        <TextView
            android:id="@+id/offertitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="15dp"
            android:paddingRight="15dp"
            android:paddingTop="15dp"
            android:text="Hello"
            android:textColor="@color/colorPrimary"
            android:textSize="24dp" />


        <LinearLayout
            android:id="@+id/troisieme"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <ImageView
                android:id="@+id/offerstars"
                android:layout_width="wrap_content"
                android:layout_height="15dp"
                android:src="@mipmap/ic_launcher" />

            <TextView
                android:id="@+id/offerthoughts"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:gravity="center_vertical"
                android:text="53 avis"
                android:textColor="@color/colorAccent" />
        </LinearLayout>
    </LinearLayout>


    <TextView
        android:id="@+id/offer_price"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="#D3D3D3"
        android:gravity="center"
        android:text="blablabla"
        android:textColor="#000000" />
</LinearLayout>


您能给我们举一个您想要的输出的例子吗?您能附上一张您想要的图像吗?是的,谢谢您的快速回答!寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参见:如何创建。使用“编辑”链接改进您的问题-不要通过评论添加更多信息。谢谢我真的很抱歉,我将删除我的问题,但请记住,这是我的第一个问题,我以前从未问过或回答过!我只是一个初学者,在同一个错误上被困了好几天,为糟糕的语言和其他所有事情感到抱歉。非常感谢,伙计,第一次成功了!顺便说一句,我明白它为什么不起作用了,多谢!对于未来的读者,您是否会编辑此答案以显示其帮助?