可以在点击按钮时,获取用户想要过滤的关键字,然后遍历ListView中的所有项,将不符合关键字要求的项隐藏掉。代码示例如下:
// 获取按钮
Button filterBtn = findViewById(R.id.filter_btn);
// 获取ListView和Ada
pt
er
ListView listView = findViewById(R.id.list_view);
ArrayAda
pt
er<String> ada
pt
er = (ArrayAda
pt
er<String>) listView.getAda
pt
er();
// 点击按钮时的事件监听
filterBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 获取用户输入的过滤关键字
EditText filterText = findViewById(R.id.filter_text);
String filterKey = filterText.getText().toString().trim();
// 遍历ListView中的所有项
for (int i = 0; i < listView.getCount(); i++) {
String item = adapter.getItem(i);
// 如果当前项中包含关键字,则显示出来
if (item.contains(filterKey)) {
listView.getChildAt(i).setVisibility(View.VISIBLE);
// 否则隐藏当前项
else {
listView.getChildAt(i).setVisibility(View.GONE);
在代码中,我们通过findViewById()方法获取了按钮和ListView,并强制转换得到了ListView的适配器。然后在按钮的onClick()方法中获取了用户输入的过滤关键字,并通过遍历ListView中的所有项判断每个项是否包含关键字,从而显示或隐藏相应项。注意,我们使用getChildAt()方法获取了ListView中的每一项,然后通过setVisibility()方法给该项设置了显示或隐藏的状态。