在android的流程布局中实现新的行



我的问题与此类似

如何阻止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,则可以工作。如有任何建议,请参考

相关内容

  • 没有找到相关文章

最新更新