我遇到“TextView”问题我不知道如何解决。我在“LinearLayout”中有三个“TextView”,文本将保持相同的大小,与断行相同。目前,文本在同一行,但大小不同。该怎么办?以下图片和代码:
<LinearLayout
android:id="@+id/complementaryInfoLayout"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_width="match_parent"
android:orientation="horizontal"
android:background="@color/purewhite">
<TextView
android:id="@+id/textCategory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:layout_marginStart="15dp"
android:text="@string/placeholder" />
<TextView
android:id="@+id/textCity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:text="@string/placeholder" />
<TextView
android:id="@+id/textNeighborhood"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:text="@string/placeholder" />
</LinearLayout>
答案 0 :(得分:0)
嗯..最后一行似乎打破了字符串大小。 您可以通过使用以下内容强制TextView占用一行而不管其内容:
android:singleLine="true"
此外,您可以使用以下方式轻松触摸:
android:ellipsize="marquee"
所以它不会突然出现其中的内容。
希望它有所帮助...
答案 1 :(得分:0)
尝试为TextView
s赋予权重:
<LinearLayout
android:id="@+id/complementaryInfoLayout"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_width="match_parent"
android:orientation="horizontal"
android:background="@color/purewhite">
<TextView
android:id="@+id/textCategory"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:layout_marginStart="15dp"
android:text="@string/placeholder" />
<TextView
android:id="@+id/textCity"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:text="@string/placeholder" />
<TextView
android:id="@+id/textNeighborhood"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#545454"
android:text="@string/placeholder" />
</LinearLayout>
答案 2 :(得分:0)
您的查询需要一些清晰度,我希望您想要水平调整线性布局中的三个子项,为此
您可以使用android:layout_weight
属性,在以下代码中我layout_weight
分别使用2, 3 and 5
,
此处2+3+5=10
,即total 10 parts equal to 100% width
所以第一个textview占据(2/10)*100 = 20% width
horiontally
所以第二个textview占据(3/10)*100 = 30%
宽度horiontally
所以第三个textview占据(5/10)*100 = 50% width
horiontally
<LinearLayout
android:id="@+id/complementaryInfoLayout"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="horizontal"
android:background="@color/purewhite">
<TextView
android:id="@+id/textCategory"
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/textCity"
android:layout_width="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/textNeighborhood"
android:layout_width="0dp"
android:layout_weight="5"
android:layout_height="wrap_content"/>
</LinearLayout>