2011-11-30 18 views

回答

0

您可以添加一个搜索栏操作栏而不是作为一个菜单项...你怎么甚至“作为菜单项” meen?

+0

我的意思是,当我们添加任何东西到我们行动起来吧,我们把这些项目在menu.xml文件&然后用onCreateOptionsMenu(),然后获取点击使用onOptionsItemSelected()对他们的事件夸大菜单所以我可以有一个编辑文本作为菜单项。有一个名为android:actionLayout的标签可用于android 3.0。在这里,我们可以有任何布局,它将显示在操作栏中。我能够做到这一点,但我想知道如何让这些objetcs上的听众(例如编辑文本,按钮)在布局 – Ankit

+0

中定义看看我的下一个答案 – Alioooop

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. 
// 

林在工作,所以我不能做一些研究,所以这只是猜测...

3

我找到了解决办法。它是这样的(仅适用于Android 3.0蜂巢)进行 配售行动吧 编辑文本用于放置物品 使用该标签在您的项目在菜单XML

android: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); 

,然后将这些项目的听众。它会正常工作

+0

我一直试图做一个“导航“这样的酒吧2天...完美的工作,谢谢! –