首页 > 编程技术 > android

Android开发之菜单(menu)用法实例分析

发布时间:2017-7-6 23:19

小编推荐的这篇文章介绍了Android开发之菜单(menu)用法实例分析,非常实用,有兴趣的同学快来看看吧

Android手机专门用一个按键“menu“来显示菜单。

要实现菜单功能,首先要通过方法onCreateOptionMenu来创建菜单,创建方法有两种:一种是直接导入有menu的xml文件,一种是用类Menu的方法直接添加。创建好菜单后,用事件监听器onOptionItemSelected对能够触发的事件进行监听。

下面这个例子有两个Activity,分别有上面的两种方法实现menu,每个menu里都有事件监听器进行Activity跳转和退出。

1.资源文件下的menu文件res/menu/menu.xml

 

 代码如下复制代码

 <itemandroid:id="@+id/about"

   android:title="关于"/>

 <itemandroid:id="@+id/exit"

   android:title="退出"/>

 

Activity01.Java

 

 代码如下复制代码

packagecom.yarin.android.Examples_04_13;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.os.Bundle;

importandroid.view.Menu;

importandroid.view.MenuInflater;

importandroid.view.MenuItem;

publicclassActivity01extendsActivity

{

 /** Called when the activity is first created. */

 @Override

 publicvoidonCreate(Bundle savedInstanceState)

 {

  super.onCreate(savedInstanceState);

  setContentView(R.layout.main);

 }

 /*创建menu*/

 public boolean onCreateOptionsMenu(Menu menu)

 {

  //MenuInflater class is used to instantiate menu XML files into Menu objects

  MenuInflater inflater = getMenuInflater();

  //设置menu界面为res/menu/menu.xml

  inflater.inflate(R.menu.menu, menu);

  return true;

 }

 /*处理菜单事件*/

 public boolean onOptionsItemSelected(MenuItem item)

 {

  //得到当前选中的MenuItem的ID,

  int item_id = item.getItemId();

  switch (item_id)

  {

   case R.id.about:

    /* 新建一个Intent对象 */

    Intent intent = new Intent();

    /* 指定intent要启动的类 */

    intent.setClass(Activity01.this, Activity02.class);

    /* 启动一个新的Activity */

    startActivity(intent);

    /* 关闭当前的Activity */

    Activity01.this.finish();

    break;

   caseR.id.exit:

    Activity01.this.finish();

    break;

  }

  returntrue;

 }

}

 

Activity02.java

 

 代码如下复制代码

packagecom.yarin.android.Examples_04_13;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.os.Bundle;

importandroid.view.Menu;

importandroid.view.MenuItem;

publicclassActivity02extendsActivity

{

 publicvoidonCreate(Bundle savedInstanceState)

 {

  super.onCreate(savedInstanceState);

  /* 设置显示main2.xml布局 */

  setContentView(R.layout.main2);

 }

 /*创建menu*/

 public boolean onCreateOptionsMenu(Menu menu)

 {

  //为menu添加内容

  menu.add(0, 0, 0, R.string.ok);

  menu.add(0, 1, 1, R.string.back);

  return true;

 }

 /*处理menu的事件*/

 public boolean onOptionsItemSelected(MenuItem item)

 {

  //得到当前选中的MenuItem的ID,

  int item_id = item.getItemId();

  switch (item_id)

  {

   case 0:

   case 1:

    /* 新建一个Intent对象 */

    Intent intent = new Intent();

    /* 指定intent要启动的类 */

    intent.setClass(Activity02.this, Activity01.class);

    /* 启动一个新的Activity */

    startActivity(intent);

    /* 关闭当前的Activity */

    Activity02.this.finish();

    break;

  }

  returntrue;

 }

}

 

本例用到了两个Activity,不要忘记在AndroidManifest.xml中声明。

安卓手机是现在很多人都在使用的手机,安卓手机的内存是很多人比较关心的。这次文章就给大家介绍下安卓手机内存怎么增加,希望对大家有所帮助。

安装一个腾讯电脑管家,或其它你认为不错的安全软件。下载安装完成并且打开管家首页。在手机管家首页界面下滑,找到垃圾清理项。如下图,“清理益起来”就是该版本软件的垃圾清理。扫描垃圾,可能需要花一定的时间,要耐心等待。扫描完成点击立即清理即可完成清理。 安卓手机怎么增加内存

安卓手机怎么增加内存 三联

  对于一些大文件或软件,可以右上角的手机瘦身进行手动清理。选中不需要的大文件和软件删除,就能省下很多内存。另外注意一下,不要随便现在不常用的文件和软件,因为这不仅会占用空间,还会影响手机系统运行速度。  安卓手机怎么增加内存

本文介绍了Android Caused by: java.lang.ClassNotFoundException解决办法,非常实用,有兴趣的同学可以此案考一下

Android Caused by: java.lang.ClassNotFoundException解决办法

出现问题:

08-13 18:29:22.924:  E/AndroidRuntime(1875): Caused by:  Java.lang.ClassNotFoundException:XXXXX    in loader  dalvik.system.PathClassLoader[/data/app/XXXX.apk]

我想大家经常因为疏忽出现ClassNotFoundException的异常,这个异常在Android开发中无非就是告诉你类没有找到,那么什么原因导致没找到呢?

其实一般分为2种情况:

1、启动activity的时候,在AndroidManifest.xml 可能压根你就忘了添加一个activity,或者说activity的包名或者名字写错了,这个犯错几率很高的

2、你的使用的class,是一个外部的JAR包,当在工程中编译使用时,发布成APK并没有包含JAR文件,所以APK在执行的时候就找不到JAR文件,会报错。

所以一定在“Order and Export”里,勾选使用的jar包。切记!

标签:[!--infotagslink--]

您可能感兴趣的文章: