我有一个包含ImageButton的LinearLayout,在其下面是TextView作为标签。我想让TextView居中,并将它包装到它下面的ImageButton的宽度。
编辑:我应该把我正在使用的代码放进去。这是带有Button和TextView的LinearLayout <LinearLayout
android:id="@+id/contestLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageButton
android:id="@+id/contestButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/contestsbtnimg"
android:layout_weight="1">
</ImageButton>
<TextView
android:id="@+id/contestLabel"
style="@style/MainMenuStyle"
android:text="@string/contests">
</TextView>
</LinearLayout>
这是TextView的相关样式声明:
<style name="MainMenuStyle" parent="android:style/TextAppearance">
<item name="android:textColor">#000000</item>
<item name="android:layout_centerHorizontal">true</item>
<item name="android:textSize">12sp</item>
<item name="android:singleLine">false</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
</style>
我想要的是ImageButton位于LinearLayout之上,TextView充当下面的标签,如果它比按钮宽,则将文本包装到第二行。
答案 0 :(得分:1)
你至少应该尝试自己找一个解决方案。
或者解释为什么(以及什么)你自己的发现。
这样的事情可以解决问题:
<LinearLayout android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<ImageButton android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="..."/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="...."/>
</LinearLayout>