导入依赖
implementation 'com.hyman:flowlayout-lib:1.1.2'
搜索框布局
<EditText
android:id="@+id/edit_find"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center"
android:layout_marginBottom="10dp"
android:background="@drawable/edit_shape"
android:drawableLeft="@drawable/ic_search"
android:hint="搜索"
android:padding="10dp" />
点击搜索框跳转
editFind.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Intent intent = new Intent(getActivity(),SearchActivity.class);
startActivity(intent);
return true;
}
});
SearchActivity布局
<?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-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
tools:context=".SearchActivity">
<LinearLayout
android:layout_width="match_parent"
android:orientation="horizontal"
android:gravity="center"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/back_img"
android:layout_width="30dp"
android:background="@drawable/ic_arrow_back"
android:layout_height="30dp" />
<EditText
android:id="@+id/edit_search"
android:layout_width="0dp"
android:layout_weight="6"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center"
android:layout_marginBottom="10dp"
android:background="@drawable/edit_shape"
android:drawableLeft="@drawable/ic_search"
android:hint="搜索"
android:padding="10dp" />
<TextView
android:id="@+id/search_text"
android:layout_width="0dp"
android:layout_weight="2"
android:text="搜索"
android:textSize="18sp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:padding="10dp"
android:layout_height="wrap_content" />
</LinearLayout>
<com.zhy.view.flowlayout.FlowLayout
android:id="@+id/flow_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"></com.zhy.view.flowlayout.FlowLayout>
</LinearLayout>
SearchActivity类
public class SearchActivity extends AppCompatActivity {
@BindView(R.id.back_img)
ImageView backImg;
@BindView(R.id.edit_search)
EditText editSearch;
@BindView(R.id.search_text)
TextView searchText;
@BindView(R.id.flow_layout)
FlowLayout flowLayout;
private List<String> stringList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
ButterKnife.bind(this);
stringList = new ArrayList<>();
stringList.add("小米3是一代机王");
stringList.add("华为");
stringList.add("华为5g");
stringList.add("华为");
stringList.add("百度ai");
stringList.add("小米ai是产业链的一个布局产品");
stringList.add("虚拟于现实");
stringList.add("小米");
searchClick();
}
private void searchClick() {
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10,5,10,5);
if (flowLayout!=null){
flowLayout.removeAllViews();
}
for (int i = 0; i < stringList.size(); i++) {
TextView textView = new TextView(this);
textView.setPadding(28,10,28,10);
textView.setText(stringList.get(i));
textView.setMaxEms(10);
textView.setSingleLine();
textView.setLayoutParams(layoutParams);
flowLayout.addView(textView, layoutParams);
}
}
@OnClick({R.id.back_img, R.id.search_text})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.back_img:
Intent intent = new Intent(SearchActivity.this, MainActivity.class);
startActivity(intent);
finish();
break;
case R.id.search_text:
String string = editSearch.getText().toString();
if (string.equals("")){
Toast.makeText(this, "不能为空", Toast.LENGTH_SHORT).show();
}else{
stringList.add(string);
searchClick();
break;
}
}
}
}