我们的菜单中是否有一个编辑文本框,可以显示在操作栏中 如果我们可以,那么我们如何才能在此编辑文本上获得点击事件?
答案 0 :(得分:4)
我找到了解决方案。这是这样做的(仅适用于android 3.0蜂窝) 在操作栏中放置编辑文本 用于放置物品 在菜单xml
中的项目中使用此TAGandroid:actionLayout="@layout/search_bar"
定义编辑文字& search_bar布局中的按钮。
现在让听众对他们这样做 -
在onCreateOptionsMenu()
et = (EditText) menu.findItem(R.id.search_bar).getActionView().findViewById(R.id.searchbar);
findBtn = (ImageButton)menu.findItem(R.id.search_bar).getActionView().findViewById(R.id.find);
然后为这些项目放置侦听器。它会正常工作
答案 1 :(得分:0)
您可以在操作栏中添加搜索栏,但不能将其添加为菜单项...您甚至可以使用“作为菜单项”进行操作?
答案 2 :(得分:0)
我还没试过,但是你能从代码中使用actionlayout吗?以这种方式你可以这样使用获取文本框:
LayoutInflater inflater = (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
LinearLayout wrapper = (LinearLayout) inflater.inflate(R.layout.random_layout, null);
EditText editText = (EditText )wrapper.findViewById(R.id.edit);
//
//code to set the listener
//
//
//set the android:actionLayout to wrapper etc.
//
我在工作,所以我无法进行一些研究,所以这只是推测......