我的问题与此类似
如何阻止GridView裁剪我的图像?
我使用Flowlayout来创建标签云,我能够创建它,我膨胀文本视图,因为文本可以变化,我已经看到了所有使用新行有固定布局xml的例子。如何在膨胀的textview中实现新行
似乎FlowLayout.LayoutParams
对象上的新行标志在运行时不可修改。您需要修改库本身来添加此功能,或者保留一个单独的布局文件,以便在需要使用换行符xml填充TextView时使用。
如果你想把文本分成两行并继续使用FlowLayout,你需要膨胀两个单独的TextViews,一个用于第一行,一个用于第二行。您还需要手动计算屏幕上可以容纳的文本量。
父元素布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.example.customns"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
tools:context=".CustomActivity"
android:orientation="vertical">
<com.example.customns.FlowLayout
android:id="@+id/loadlayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
</com.example.customns.FlowLayout>
</RelativeLayout>
在父
中填充的布局<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.example.customns"
android:id="@+id/buttonContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="@color/blue"
android:orientation="horizontal" >
<TextView
app:layout_newLine="true"
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
layout_newLine在膨胀布局中不起作用,如果我在父布局中有所有的textview,则可以工作。如有任何建议,请参考