Android中的TextView 、EditText、Activity、Intent实例小计算器

正在学习Android,都不知道怎么下手,希望高手给点建议,有什么好的教程分享,小弟感谢不尽。以下小实例主要功能是实现Activity的跳转

主要方法:

(1)intent.putExtra("add1", one);//把one的值加到add1 中

(2)intent.setClass(firstActivity.this, secondActivity.class);//实现跳转

 (3)firstActivity.this.startActivityForResult(intent, REQUEST_CODE);//返回成功的参数

(4)protected void onActivityResult(int requestCode, int resultCode, Intent data) {//回调函数
  super.onActivityResult(requestCode, resultCode, data){
      }
 }

(5)public boolean onCreateOptionsMenu(Menu menu) {//创建菜单
  // TODO Auto-generated method stub
  menu.add(0, 1, 1, R.string.exit);
  return super.onCreateOptionsMenu(menu);
 }

(6)public boolean onMenuItemSelected(int featureId, MenuItem item) {//监听选中菜单项
    return super.onMenuItemSelected(featureId, item);
 }

(7)Intent intent =getIntent();//获取Intent的对象

(8)String one = intent.getStringExtra("add1");//获取参数的值

java代码:

firstActivity.java

package com.test;

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.Toast;

public class firstActivity extends Activity {
 
    public static final int REQUEST_CODE = 1;
 EditText add1,add2;
    Button btn1;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //实例化组件
        add1 = (EditText) findViewById(R.id.add1);
        add2 = (EditText) findViewById(R.id.add2);
        btn1 = (Button) findViewById(R.id.Calculator);
        //设置监听器
        btn1.setOnClickListener(new operator());
    }
    //新建一个类实现监听器
    class operator implements OnClickListener{
  @Override
  public void onClick(View v) {
   //获取文本框的值 
   String one = add1.getText().toString();
   String two = add2.getText().toString();
   
   //使用Intent对数据的封装
   Intent intent  = new Intent();
   intent.putExtra("add1", one);
   intent.putExtra("add2", two);
   intent.setClass(firstActivity.this, secondActivity.class);
      firstActivity.this.startActivityForResult(intent, REQUEST_CODE);
   
  }    
      }
 //返回 方法
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  if(requestCode==1){
      if(resultCode==secondActivity.RESULT_CODE){
       String str=data.getStringExtra("back");
       Toast.makeText(this, str, Toast.LENGTH_LONG).show();
       }
     }
 }
 //菜单方法
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // TODO Auto-generated method stub
  menu.add(0, 1, 1, R.string.exit);
  menu.add(1, 2, 2, R.string.abort);
  return super.onCreateOptionsMenu(menu);
 }
 //选中菜单方法
 @Override
 public boolean onMenuItemSelected(int featureId, MenuItem item) {
  if(item.getItemId()==1){
   Toast.makeText(this, "退出成功",Toast.LENGTH_LONG).show();
   finish();
  }
  if(item.getItemId()==2){
   Toast.makeText(this, "关于",Toast.LENGTH_LONG).show();
  }
  return super.onMenuItemSelected(featureId, item);
 }
 
 }

*******

secondActivity.java

 

package com.test;

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

public class secondActivity  extends Activity{
    TextView result;
    Button btn2;
    public final static int RESULT_CODE=1;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		
		super.onCreate(savedInstanceState);
	    setContentView(R.layout.result);
		//实例化组件
		result = (TextView) findViewById(R.id.returnresult);
		btn2 = (Button) findViewById(R.id.result);
		//通过Intent获取数据
		Intent intent =getIntent();
		String one = intent.getStringExtra("add1");
		String two = intent.getStringExtra("add2");
		int add1 =Integer.parseInt(one);
		int add2 = Integer.parseInt(two);
		int result1 = add1*add2;
		result.setText(result1+"");
		btn2.setOnClickListener(new test());
		
	}
	class test implements OnClickListener{
		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			Intent intent=new Intent();
			intent.putExtra("back", "你可以重新计算了!");
			setResult(RESULT_CODE, intent);
			finish();
	   }
	}	
}

***********

布局文件

.xml




    
    
        
        
        
        
        
        
        
    
  

返回结果

result.xml




    
    
    


string.xml文件




    Hello World, FriendActivity!
    Friend
    android
    退出
    关于


运行结果

 

 

 

你可能感兴趣的:(Android移动开发笔记)