|
|
|
|
移动端

更新StatusActivity,捕获菜单事件

《Learning Android(中文版)》第7章首选项、文件系统、选项菜单及Intent,本章我们讲解首选项功能的实现、文件系统的组织方式,以及如何通过intent与选项菜单在不同活动之间进行切换。本节为大家介绍更新StatusActivity,捕获菜单事件。

作者:李亚舟/任中龙/杜钢译来源:电子工业出版社|2012-07-27 11:10

有奖调研 | 1TB硬盘等你拿 AI+区块链的发展趋势及应用调研


更新StatusActivity,捕获菜单事件

我们还需要一个办法, 来捕获菜单条目的点击事件。为此添加另一个回调方法onOptionsItemSelected(),该方法在用户每次单击一个菜单条目时被调用。

  1. // 当选项菜单被点击时调用  
  2. @Override  
  3. public boolean onOptionsItemSelected(MenuItem item) {  
  4. switch (item.getItemId()) { // .  
  5. case R.id.itemPrefs:  
  6. startActivity(new Intent(this, PrefsActivity.class)); // .  
  7. break;  
  8. }  
  9. return true; // .  

由于用户单击任何菜单条目时,都是同一个方法被调用,因此我们需要找到被单击的条目的ID,然后根据不同的ID,使用不同的方法去处理每个条目。虽然暂时只有一个菜单条目,但未来可能会发生变化。这里使用调换条目ID的方式来处理,是很容易扩展的方式。即使程序变得越来越复杂,也可以很方便地适应。

上下文中的startActivity()方法,可以启动一个新的活动。在这里,我们创建一条新的intent,来启动PrefsActivity类。

返回true,表示事件处理成功。

同原先一样,可以使用Eclipse的快捷功能Source→Override/Implement Methods生成onCreateOptionsMenu()、onOptionsItemSelected()方法的声明。

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Java网络编程精解

本书结合大量的典型实例,详细介绍了用Java来编写网络应用程序的技术。本书的范例都基于最新的JDK 1.5版本,书中内容包括:Java网络编程的...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊