这是我想要最终实现的目标:
我们如何实现这种布局,比如文本换行到其他textview?
以下是我目前的布局,但不是预期的:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/containerLayout"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/abc_list_selector_holo_dark"
android:gravity="center_vertical"
android:minHeight="52dp"
android:paddingLeft="8dp"
android:paddingRight="18dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/add_ticket_hint_gray"
android:gravity="top"
android:orientation="horizontal"
android:paddingBottom="17dp"
android:paddingTop="17dp">
<TextView
android:id="@+id/tv_job_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:textColor="@color/app_blue"
android:textSize="14dp"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="7dp"
android:background="@color/add_ticket_hint_gray"
android:gravity="top"
android:orientation="horizontal"
android:paddingBottom="17dp"
android:paddingTop="17dp">
<TextView
android:id="@+id/tv_count"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:maxLength="4"
android:minEms="2"
android:singleLine="true"
android:text="x2"
android:textColor="@color/fix_job_price_light_gray"
android:textSize="14dp"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="5dp"
android:background="@color/add_ticket_hint_gray"
android:gravity="top|right"
android:paddingBottom="17dp"
android:paddingTop="17dp">
<TextView
android:id="@+id/tv_job_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:ellipsize="marquee"
android:gravity="right"
android:inputType="number|numberDecimal"
android:marqueeRepeatLimit="marquee_forever"
android:maxLength="8"
android:minEms="3"
android:singleLine="true"
android:text="$1"
android:textColor="@color/fix_job_opt_gray"
android:textSize="14dp"/>
</LinearLayout>
</LinearLayout>
此布局不允许我在第二行之后在其他textview下面显示文本。
答案 0 :(得分:0)
我想你想要这个
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="360dp"
android:layout_height="100dp"
android:background="#ff0000"
android:id="@+id/page1"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:padding="5dp"
android:text="Textview-1"/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:padding="5dp"
android:text="tab-1 content"/>
</LinearLayout>
<LinearLayout
android:layout_width="360dp"
android:layout_height="100dp"
android:background="#00ff00"
android:id="@+id/page2"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:layout_marginLeft="120dp"
android:padding="5dp"
android:text="Textview-2"/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:padding="5dp"
android:text="tab-2 content"/>
</LinearLayout>
<LinearLayout
android:layout_width="360dp"
android:layout_height="100dp"
android:background="#0000ff"
android:id="@+id/page3"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:layout_marginLeft="240dp"
android:padding="5dp"
android:text="Textview-3"/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:padding="5dp"
android:text="tab-3 content"/>
</LinearLayout>
<LinearLayout
android:layout_width="360dp"
android:layout_height="31dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="119.3dp"
android:layout_height="31dp"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:padding="5dp"
android:text="Textview-1"/>
<View
android:layout_width="120dp"
android:layout_height="1dp"
android:background="#000000"/>
</LinearLayout>
<View
android:layout_width="1dp"
android:layout_height="31dp"
android:background="#000000"/>
<LinearLayout
android:layout_width="119.3dp"
android:layout_height="31dp"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:padding="5dp"
android:text="Textview-2"/>
<View
android:layout_width="120dp"
android:layout_height="1dp"
android:background="#000000"/>
</LinearLayout>
<View
android:layout_width="1dp"
android:layout_height="31dp"
android:background="#000000"/>
<LinearLayout
android:layout_width="119.3dp"
android:layout_height="31dp"
android:visibility="gone"
android:orientation="vertical">
<TextView
android:layout_width="120dp"
android:layout_height="30dp"
android:padding="5dp"
android:text="Textview-3"/>
<View
android:layout_width="120dp"
android:layout_height="1dp"
android:background="#000000"/>
</LinearLayout>
</LinearLayout>
</FrameLayout>
并在用户点击按钮时更改可见
答案 1 :(得分:0)
尝试这样的事情
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="30dp"
>
<TextView
android:id="@+id/container"
android:text="Textview - 1"
android:background="#aa0000"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<TextView
android:id="@+id/tv3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#aaaa00"
android:padding="10dp"
android:layout_alignRight="@+id/container"
android:layout_alignTop="@+id/container"
android:text="Textview - 3"/>
<TextView
android:id="@+id/tv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#aa00aa"
android:text="Textview - 2"
android:padding="10dp"
android:layout_alignTop="@+id/container"
android:layout_toLeftOf="@+id/tv3"
/>
</RelativeLayout>