Cil*_*nco 12 android butterknife
在我当前的Android项目中,我使用Butterknife库来绑定视图并onClick为它们使用注释.这一切在片段中都很有效,但现在我无法找到解决方案:
我使用新的ToolBaras ActionBar并用其中的一个菜单充气SearchView.为此,SearchView我想使用@OnTextChanged注释但是当我用ActionView菜单项调用bind方法时,Butterknife尝试再次重新注册所有视图,当然在ActionView它中找不到任何其他视图RootLayout.
那么,有没有办法只能添加一个View带有Butterknife或者我可以得到一个视图包含所有意见我RootLayout和ToolBarView这样我就可以通过这个视图的绑定方法?例如,在Activites中,我也可以调用findViewById菜单ID,但是如果我使用getView()我的Fragment它不起作用.有什么想法吗?
我认为这是不可能的,因为SearchView是一个菜单项.您在菜单声明中使用的ID标识菜单中的此视图,而不是活动的视图,这可能是Butterknife无法绑定它的原因.
我担心你必须这样做:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.bookings_list_menu, menu);
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
searchView.setOnSearchClickListener(...);
searchView.setOnCloseListener(...);
searchView.setOnQueryTextListener(...);
super.onCreateOptionsMenu(menu, inflater);
}
Run Code Online (Sandbox Code Playgroud)