最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android流式布局實現(xiàn)歷史搜索記錄功能

 更新時間:2017年05月09日 11:12:11   作者:zhang_li_yong  
最近在開發(fā)項目的時候,有一個需求是展示歷史搜索記錄 ,展示的樣式是流式布局(就是根據(jù)內(nèi)容自動換行)。接下來通過本文給大家分享android流式布局實現(xiàn)歷史搜索記錄功能,感興趣的的小伙伴參考下

最近在開發(fā)項目的時候,有一個需求是展示歷史搜索記錄 ,展示的樣式是流式布局(就是根據(jù)內(nèi)容自動換行)。在網(wǎng)上看到了一個不錯的類庫跟大家分享一下

首先在AndroidStudio簡歷一個工程項目導(dǎo)入module類庫,我會把項目demo方法GitHub上

說一下demo中的實現(xiàn)方式

在 activity_main.xml中

<?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:id="@+id/activity_main"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">
  <EditText
    android:id="@+id/edt"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
  <Button
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="確定" />
  <ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <com.zhy.view.flowlayout.TagFlowLayout
      android:id="@+id/id_flowlayout"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      app:max_select="-1" />
  </ScrollView>
</LinearLayout>

實現(xiàn)模擬搜索效果圖

這里寫圖片描述

MainActivity.Java 代碼

public class MainActivity extends AppCompatActivity {
  private TagFlowLayout mFlowLayout;
  private EditText editText;
  private Button button;
  private List<String> strings;
  //布局管理器
  private LayoutInflater mInflater;
  //流式布局的子布局
  private TextView tv;
  public Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
      switch (msg.what) {
        case 1:
          mFlowLayout.setAdapter(new TagAdapter<String>(strings) {
            @Override
            public View getView(FlowLayout parent, int position, String s) {
              tv = (TextView) mInflater.inflate(R.layout.tv,
                  mFlowLayout, false);
              tv.setText(s);
              return tv;
            }
          });
          break;
      }
      super.handleMessage(msg);
    }
  };
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mInflater = LayoutInflater.from(this);
    mFlowLayout = (TagFlowLayout) findViewById(R.id.id_flowlayout);
    editText = (EditText) findViewById(R.id.edt);
    button = (Button) findViewById(R.id.btn);
    strings = new ArrayList<>();
    button.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        String aa = editText.getText().toString().trim();
        strings.add(aa);
        //通知handler更新UI
        handler.sendEmptyMessageDelayed(1, 0);
      }
    });
    //流式布局tag的點(diǎn)擊方法
    mFlowLayout.setOnTagClickListener(new TagFlowLayout.OnTagClickListener() {
      @Override
      public boolean onTagClick(View view, int position, FlowLayout parent) {
        Toast.makeText(MainActivity.this, tv.getText(), Toast.LENGTH_SHORT).show();
        return true;
      }
    });
  }

當(dāng)我們點(diǎn)擊確定按鈕的時候,通知handler 去更新UI界面

效果圖如下:

這里寫圖片描述

這樣就實現(xiàn)了一個簡單的流式布局歷史搜索記錄

GitHub地址:https://github.com/zhangliyong114/FlowLayoutDemo

以上所述是小編給大家介紹的Android流式布局實現(xiàn)歷史搜索記錄功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 分析Android常見的內(nèi)存泄露和解決方案

    分析Android常見的內(nèi)存泄露和解決方案

    內(nèi)存泄漏(Memory Leak)是指程序中己動態(tài)分配的堆內(nèi)存由于某種原因程序未釋放或無法釋放,造成系統(tǒng)內(nèi)存的浪費(fèi),導(dǎo)致程序運(yùn)行速度減慢甚至系統(tǒng)崩潰 (OOM) 等嚴(yán)重后果
    2021-06-06
  • android點(diǎn)擊無效驗證的解決方法

    android點(diǎn)擊無效驗證的解決方法

    這篇文章主要給大家介紹了關(guān)于android點(diǎn)擊無效驗證的解決方法,文中通過示例代碼介紹的非常詳細(xì),對各位android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Android不同版本兼容性適配方法教程

    Android不同版本兼容性適配方法教程

    這篇文章主要介紹了Android不同版本兼容性適配方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-11-11
  • Android中WebView的使用與后退鍵處理詳細(xì)講解

    Android中WebView的使用與后退鍵處理詳細(xì)講解

    博主自從開始寫安卓以來,一直飽受WebView的摧殘,好在網(wǎng)上一大堆的大神給出了他們成長路上遇到的坑以及一些解決辦法,這篇文章主要給大家介紹了關(guān)于Android中WebView的使用與后退鍵處理的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • android實現(xiàn)切換日期左右無限滑動效果

    android實現(xiàn)切換日期左右無限滑動效果

    本篇內(nèi)容給大家分享了android開發(fā)時候?qū)崿F(xiàn)自定義的日期無限左右滑動效果以及控件使用的技巧。
    2017-11-11
  • Android控件ImageSwitcher實現(xiàn)左右圖片切換功能

    Android控件ImageSwitcher實現(xiàn)左右圖片切換功能

    這篇文章主要為大家詳細(xì)介紹了Android控件ImageSwitcher實現(xiàn)左右圖片切換功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-05-05
  • Android使用ViewPager實現(xiàn)屏幕滑動效果

    Android使用ViewPager實現(xiàn)屏幕滑動效果

    這篇文章主要為大家詳細(xì)介紹了Android使用ViewPager實現(xiàn)屏幕滑動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 在Android開發(fā)中使用自定義組合控件的例子

    在Android開發(fā)中使用自定義組合控件的例子

    這篇文章主要介紹了在Android開發(fā)中使用自定義組合控件的例子,作者根據(jù)例子總結(jié)到了實現(xiàn)父類的構(gòu)造方法等基本要點(diǎn),具有一定參考價值,需要的朋友可以參考下
    2016-02-02
  • android studio 4.0 新建類沒有修飾符的方法

    android studio 4.0 新建類沒有修飾符的方法

    這篇文章主要介紹了android studio 4.0 新建類沒有修飾符的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Android實現(xiàn)俄羅斯方塊

    Android實現(xiàn)俄羅斯方塊

    這篇文章主要為大家詳細(xì)介紹了Android實現(xiàn)俄羅斯方塊游戲 ,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06

最新評論

鹤岗市| 常德市| 九寨沟县| 赤城县| 亚东县| 界首市| 新宾| 西盟| 锡林浩特市| 贡觉县| 鄯善县| 竹北市| 介休市| 渭南市| 平顶山市| 宿松县| SHOW| 万州区| 延津县| 凤山市| 罗山县| 大城县| 永城市| 巫山县| 关岭| 贵溪市| 绥德县| 永登县| 敦化市| 新晃| 宜兰市| 和静县| 赤城县| 阆中市| 安仁县| 米林县| 遂宁市| 涟水县| 上林县| 本溪市| 南江县|