91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

Listviewitem如何實現模糊搜索

小樊
83
2024-07-10 22:19:31
欄目: 編程語言

實現模糊搜索功能的方法是在搜索關鍵字改變時,動態的過濾ListView中的數據,只顯示匹配搜索關鍵字的數據項。

以下是一個簡單的示例代碼,演示如何在Android中實現ListView的模糊搜索功能:

public class MainActivity extends AppCompatActivity {

    private ListView listView;
    private EditText searchEditText;
    private ArrayAdapter<String> adapter;

    private ArrayList<String> dataList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView = findViewById(R.id.listView);
        searchEditText = findViewById(R.id.searchEditText);

        // 初始化數據
        dataList = new ArrayList<>();
        dataList.add("Apple");
        dataList.add("Banana");
        dataList.add("Cherry");
        dataList.add("Durian");
        dataList.add("Grape");

        // 設置ListView的適配器
        adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, dataList);
        listView.setAdapter(adapter);

        searchEditText.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {}

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                String searchText = s.toString();
                adapter.getFilter().filter(searchText);
            }

            @Override
            public void afterTextChanged(Editable s) {}
        });
    }
}

在上面的代碼中,我們通過添加一個TextWatcher來監聽搜索框內容的變化,當搜索框內容改變時,調用adapter.getFilter().filter(searchText)來過濾數據并更新ListView的顯示。ListView會根據關鍵字進行模糊匹配,并只顯示匹配項。

0
奉节县| 六安市| 社旗县| 永平县| 黄陵县| 青田县| 呼伦贝尔市| 新竹县| 昌宁县| 东城区| 息烽县| 合水县| 绥化市| 永兴县| 蒲城县| 高平市| 乌拉特前旗| 临高县| 宝丰县| 永顺县| 荆门市| 乐至县| 湘乡市| 黄平县| 宜都市| 万年县| 富裕县| 临夏县| 宣恩县| 淮安市| 孟村| 台江县| 泰顺县| 阿巴嘎旗| 呼图壁县| 那坡县| 社会| 东阿县| 寻甸| 连江县| 黑水县|