在Android中实现搜索框的方法有以下几种:
<SearchView
android:id="@+id/searchView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:iconifiedByDefault="false"
android:queryHint="Search..."
android:layout_margin="8dp"/>
然后在Activity中监听搜索框的变化和搜索事件:
SearchView searchView = findViewById(R.id.searchView);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
// 处理搜索逻辑
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
// 处理搜索框文本变化
return false;
}
});
<EditText
android:id="@+id/searchEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Search..."
android:layout_margin="8dp"/>
在Activity中监听EditText的文本变化事件:
EditText searchEditText = findViewById(R.id.searchEditText);
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) {
}
@Override
public void afterTextChanged(Editable s) {
// 处理搜索逻辑
}
});
以上是两种常见的实现搜索框的方法,你可以根据自己的需求选择合适的方式来实现。