正在学习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
退出
关于
运行结果