Android开发之——Menu 操作

原创 2012年03月27日 16:32:22

    在一个简单的例子中添加菜单, 然后执行操作。

例子: 第一个页面实现输入两个变量, 然后相乘, 第二个页面通过接收数据来显示计算结果。

第一个activity:

package com.joe;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class Kong_jianActivity extends Activity {
    
    /**
     * 1. 在activity当中, 要声明四个控件
     * 2. 为其中的两个控件设置显示的值
     * 3. 创建一个监听器, 监听按钮按下的动作
     * 4. 将监听器的对象绑定到按钮对象上
     */
    private EditText factorOne ;
    private EditText factorTwo ;
    private TextView symbol ;
    private Button calculate ;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //根据控件的id来取得代表控件的对象
        factorOne = (EditText) findViewById(R.id.factorOne) ;
        factorTwo = (EditText) findViewById(R.id.factorTwo) ;
        symbol =  (TextView) findViewById(R.id.symbol) ;
        calculate = (Button) findViewById(R.id.calculate) ;
        //为symbol 和 calculate 设置要显示的值, 有两种方法
        //symbol.setText("乘以") ;
        symbol.setText(R.string.smybol) ;
        calculate.setText(R.string.calculate) ;
        //将 监听器的对象绑定到按钮对象上
        calculate.setOnClickListener(new CalculateListener()) ;
    }
    //添加menu菜单
    public boolean onCreateOptionsMenu(Menu menu) {
        // TODO Auto-generated method stub
        menu.add(0, 1, 1, R.string.exit) ;
        menu.add(0, 2, 2, R.string.about) ;
        return super.onCreateOptionsMenu(menu);
    }
    //当点击menu选项所执行的操作
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub
        if(item.getItemId() == 1){
            finish() ;
        }
        return super.onOptionsItemSelected(item);
    }
    //添加监听器
    class CalculateListener implements OnClickListener{
        @Override
        public void onClick(View v) {
            //取得两个EditText控件的值
            String factorOneStr = factorOne.getText().toString() ;
            String factorTwoStr = factorTwo.getText().toString() ;
            //将这两个值放在intent对象当中
            Intent intent = new Intent() ;
            intent.putExtra("one", factorOneStr) ;
            intent.putExtra("two", factorTwoStr) ;
            intent.setClass(Kong_jianActivity.this, ResultActivity.class) ;
            Kong_jianActivity.this.startActivity(intent) ;
        }
    }
}


第二个acti:

package com.joe;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
/**
 * 1. 接收传送的数值
 * 2. 计算两个值的积
 * 3. 将计算的结果显示在当前的activity

 */
public class ResultActivity extends Activity {
    private TextView resultView ;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.result) ;
        resultView = (TextView) findViewById(R.id.result) ;
        //得到intent对象的值
        Intent intent = getIntent() ;
        String factorOneStr = intent.getStringExtra("one") ;
        String factorTwoStr = intent.getStringExtra("two") ;
        int factorOneInt = Integer.parseInt(factorOneStr) ;
        int factorTwoInt = Integer.parseInt(factorTwoStr) ;
        //计算两个值的积
        int result = factorOneInt * factorTwoInt ;
        resultView.setText(result + "") ; //此处添加空字符后 会自动吧result转换为字符型  
    }
}


Android的Menu菜单详解(一)

Android应用中菜单默认是看不见的,只有当用户单击手机上的"MENU"键,系统才会显示该应用关联的菜单,这种菜单也叫选项菜单。对于Android菜单menu的开发,我计划把其归类为三种类型,两种形...
  • u012637501
  • u012637501
  • 2015年06月15日 16:43
  • 1841

【Android 开发】:UI控件之 Menu 菜单的的使用(一)

这一讲开始我们来讲一下Android中菜单的使用方法,菜单是应用中的普通的组件,主要是提供友好和专注的用户体验,你可以在你的Activity中使用 Menu APIs 来提供用户动作和其他选项的操作。...
  • xukunhui2
  • xukunhui2
  • 2013年08月14日 22:10
  • 9578

android开发之Menu的使用

介绍Menu,菜单作为app中常用的一种UI表现,android的菜单分为两种,一种是optionMenu(选项菜单),一种是contextMenu(上下文菜单)。OptionMenu(选项菜单)选项...
  • m_bsky
  • m_bsky
  • 2015年08月16日 17:52
  • 193

Android开发之Menu的应用

Android中有三种类型的菜单(Menu),一种是选项菜单,即按下手机的menu键在底部弹出来的菜单,一种是上下文菜单,即长按屏幕弹出来的菜单,还有一种是子菜单,子菜单是可以被添加到其他菜单上面的菜...
  • shen823797837
  • shen823797837
  • 2012年12月27日 11:25
  • 381

Android各种Menu带你飞

Android中有各种各样的菜单,Android的菜单栏(也叫操作栏):ActionBar。先来看下Menu大汇总。 具体可看该网址:https://developer.android.com/gu...
  • lintcgirl
  • lintcgirl
  • 2016年05月23日 20:04
  • 4609

android开发之自定义dialog

很多时候,系统生成的dialog无法满足我们的需求,这个时候,我们就只能自己去自定义一个dialog来满足自己的需要了。 贴上一组代码: /** 设置dialog(双按钮) */...
  • Love414Star
  • Love414Star
  • 2016年05月26日 13:34
  • 174

[Android]使用原生Menu的一些小Tip

[Android]使用原生Menu的一些小TipOverflow menu的样式 Overflow menu显示位置 在Holo Theme时代,overflow menu会显示在原生ActionBa...
  • mac090705
  • mac090705
  • 2016年02月24日 10:19
  • 482

Android按键之Menu详解

Android手机一般都有三个键,返回键、Home键、菜单键; Android系统的菜单支持主要通过4个接口来实现。 从上图可以看出Menu是一个父类接口,它下面有两个子类一个是ContextMe...
  • x605940745
  • x605940745
  • 2014年03月09日 17:20
  • 9349

Android开发之DrawerLayout实现抽屉效果

Android开发之DrawerLayout实现抽屉效果 谷歌官方推出了一种侧滑菜单的实现方式(抽屉效果),即 DrawerLayout,这个类是在Support Library里的,需...
  • SuperStudet
  • SuperStudet
  • 2017年02月15日 10:04
  • 208

Andorid 项目中Dialog的便捷开发,全面的样式选择.

在最近写的项目中,Dialog 有各种各样的显示问题, 无论是 用dialog ,还是 alertDialog , 都会有一系列的 黑边, 黑底白字,全屏等 各种意外的结果,而且无论自己怎样自定义样式...
  • AndroidStudiofw
  • AndroidStudiofw
  • 2016年06月29日 15:28
  • 464
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android开发之——Menu 操作
举报原因:
原因补充:

(最多只允许输入30个字)