網站首頁 編程語言 正文
本文實例為大家分享了Android實現歷史搜索記錄的具體代碼,供大家參考,具體內容如下
在app 的 build.gradle下添加依賴
dependencies {
?
? ? .....
?
? ? api 'com.hyman:flowlayout-lib:1.1.2'
}
XML
<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:layout_height="match_parent" ? ? android:orientation="vertical" ? ? tools:context=".MainActivity"> ? ? ? <EditText ? ? ? ? android:id="@+id/edit" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:hint="請輸入你要搜索的內容" ? ? ? ? android:layout_height="wrap_content" /> ? ? ? <Button ? ? ? ? android:id="@+id/sure" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:text="確定"/> ? ? ? <Button ? ? ? ? android:id="@+id/clear" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:text="清空"/> ? ? ? <com.zhy.view.flowlayout.TagFlowLayout ? ? ? ? android:id="@+id/flow" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content"/> ? </LinearLayout>
JAVA
public class MainActivity extends AppCompatActivity {
?
? ? private Button sure,clear;
? ? private TagFlowLayout flow;
? ? private EditText edit;
? ? private List<String> list;
? ? private TextView tv;
? ? private LayoutInflater from;
?
? ? private Handler handler=new Handler(){
? ? ? ? @Override
? ? ? ? public void handleMessage(Message msg) {
? ? ? ? ? ? super.handleMessage(msg);
? ? ? ? ? ? flow.setAdapter(new TagAdapter<String>(list) {
? ? ? ? ? ? ? ? @Override
? ? ? ? ? ? ? ? public View getView(FlowLayout parent, int position, String o) {
?
? ? ? ? ? ? ? ? ? ? tv= (TextView) from.inflate(R.layout.item,flow,false);
? ? ? ? ? ? ? ? ? ? tv.setText(o);
? ? ? ? ? ? ? ? ? ? return tv;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? });
? ? ? ? }
? ? };
?
?
? ? @Override
? ? protected void onCreate(Bundle savedInstanceState) {
? ? ? ? super.onCreate(savedInstanceState);
? ? ? ? setContentView(R.layout.activity_main);
?
? ? ? ? sure=findViewById(R.id.sure);
? ? ? ? clear=findViewById(R.id.clear);
? ? ? ? flow= findViewById(R.id.flow);
? ? ? ? edit= findViewById(R.id.edit);
?
? ? ? ? list=new ArrayList<>();
? ? ? ? from = LayoutInflater.from(this);
?
? ? ? ? //確定
? ? ? ? sure.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onClick(View v) {
? ? ? ? ? ? ? ? String trim = edit.getText().toString().trim();
? ? ? ? ? ? ? ? list.add(trim);
? ? ? ? ? ? ? ? handler.sendEmptyMessageDelayed(1,0);
? ? ? ? ? ? }
? ? ? ? });
?
? ? ? ? //清空
? ? ? ? clear.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onClick(View v) {
? ? ? ? ? ? ? ? list.clear();
? ? ? ? ? ? ? ? handler.sendEmptyMessageDelayed(1,0);
? ? ? ? ? ? }
? ? ? ? });
? ? }
}
item布局
<?xml version="1.0" encoding="utf-8"?> <TextView ? ? xmlns:android="http://schemas.android.com/apk/res/android" ? ? android:layout_width="wrap_content" ? ? android:layout_height="wrap_content" ? ? android:layout_margin="10dp" ? ? android:background="#dddddd"/>
原文鏈接:https://blog.csdn.net/weixin_42630638/article/details/117823676
相關推薦
- 2022-04-07 C#異步編程async/await用法詳解_C#教程
- 2022-03-07 PXE如何實現自動化部署Linux系統介紹_Linux
- 2022-10-12 python繪制發散型柱狀圖+誤差陰影時間序列圖+雙坐標系時間序列圖+繪制金字塔圖_python
- 2022-12-04 python?使用enumerate()函數詳解_python
- 2023-05-08 C語言中棧的結構和函數接口的使用示例_C 語言
- 2022-08-06 C#使用Tesseract進行Ocr識別的方法實現_C#教程
- 2023-10-24 Spring中的@Autowired和@Resource區別
- 2022-11-26 React常見跨窗口通信方式實例詳解_React
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支