你好,
Android 4 (ICS) 提供了一个名为 ActionBar 的 View 元素。使用 ActionBar,我创建了一个搜索小部件,我可以在其中输入文本以触发远程建议搜索。如果您单击此 ActionBar 中的放大镜图标以打开搜索小部件文本字段,则会发生两件事:
- 显示软键盘
- “主页按钮”(左上角的应用程序图标)改变了他的 “向上按钮”的功能。 “向上”的意思是,你撤消了你的最后一个 操作(在本例中:打开搜索小部件文本字段)
如果您单击“向上按钮”,搜索小部件会折叠,这样文本字段就会消失。在同一时刻,“向上按钮”将其功能更改回充当“主页按钮”。此行为描述了带有附加搜索小部件的 Android 4 ActionBar 的“默认”行为。
使用硬件“后退按钮”而不是软“向上按钮”,键盘消失,但搜索小部件保持打开状态。此外,“向上按钮”不会更改为“主页按钮”。
我的问题: 如何以编程方式触发 ActionBar 中的“向上按钮”单击?如果我能做到这一点,我可以折叠搜索小部件文本字段并放回“向上按钮”以再次成为“主页按钮”,如果用户按下硬件“后退按钮”。
此示例 在最左侧显示了一个“主页按钮”,在右侧显示了一个关闭的搜索小部件“放大镜图标”。如果用户点击放大镜,文本字段就会出现,“主页按钮”变成“向上按钮”。
提前致谢!
最佳答案
我认为可以解决这个问题。正如文档所说,
To navigate up when the user presses the app icon, you can use the NavUtils class's static method, navigateUpFromSameTask().
所以你可以手动调用
NavUtils.navigateUpFromSameTask(this);
用于以编程方式执行主页按钮单击。
关于Android 操作栏 : click Up-Button programmatically,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8852523/