先给大家展示一下FlowLayout的效果:
这种效果是现在大多数app要用到的,那么它是怎么实现的那:
首先,添加依赖:
implementation 'com.nex3z:flow-layout:1.0.0'
占位:
<com.nex3z.flowlayout.FlowLayout
android:id="@+id/flowLayout"
android:layout_margin="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
activity:
//设置每个button之间的间隔
flowLayout.setChildSpacing(15);
flowLayout.setRowSpacing(15);
flowLayout.setChildSpacingForLastRow(15);
//添加flowlayout
for (int i = 0; i < hots.size(); i++) {
//控件
Button button = new Button(MySousuoView.this);//定义一个button控件
button.setBackgroundResource(R.drawable.singer_fl_backlayout);//设置背景
button.setText(hots.get(i).getFirst());//设置文字内容
button.setPadding(10, 0, 10, 0);//设置内边距
button.setTextColor(R.color.textcol);//设置文字颜色
flowLayout.addView(button);
}
简单来说就是实例化一个控件,添加到flowlayout中,有没有觉得很简单。