【发布时间】:2019-03-16 16:59:37
【问题描述】:
我有ToolBar 并且我已将Searchview 定义为一个项目:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
<item
android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
app:showAsAction="never"
app:actionViewClass="android.support.v7.widget.SearchView"
android:title="Search"/>
</menu>
然后我有BaseActivity 类,我在其中定义Toolbar:
protected final void onCreate(Bundle savedInstanceState, int layoutId)
{
super.onCreate(savedInstanceState);
setContentView(layoutId);
Toolbar myToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(myToolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
assert myToolbar != null;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
我有显示工具栏的搜索活动,我想显示搜索视图。问题是 APP 因 空指针异常 而崩溃,无法找到 SearchViewaction_search
public class SearchActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
SearchView searchview = (SearchView) findViewById(R.id.action_search);
searchview.setVisibility(SearchView.VISIBLE);
}
}
显示\隐藏SearchView的正确方法是什么?
【问题讨论】:
标签: android toolbar searchview