一,关于Intent
先看看一个Intent包含啥:
1,Component name:决定启动哪一个组件
2,action:activity应该做哪些动作
3,data:一个activity向另外一个activity传递的数据
4,category:
5,extras:键值对
6,flags
二,在一个Activity中启动另外一个Activity
首先我们创建两个Activity,在启动时进入的Activity中加入一个按钮,点击这个按钮,然后跳转到另外一个Activity.
package com.example.activity_02;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button myButton=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //设置当前布局使用的xml
myButton=(Button)findViewById(R.id.myButton); //获取activity上的button
myButton.setOnClickListener(new MyButtonListerner()); //将MyButtonListerner捆绑到myButton上面 ,实现点击的时候跳转
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
class MyButtonListerner implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO 自动生成的方法存根
//生成一个Intent对象
Intent intent=new Intent();
intent.putExtra("textIntent", "pbc");//在Intent中放入键值对,进行传递
intent.setClass(MainActivity.this,OtherActivity.class); //设置从当前activity跳转到OtherActivity
MainActivity.this.startActivity(intent); //启动另外的Activity
/*Uri uri=Uri.parse("smsto://0800000123");
Intent intent=new Intent(Intent.ACTION_SENDTO,uri);
intent.putExtra("the sms body", "the sms text");
startActivity(intent);*/
}
}
}
首先我们要在按钮上添加一个类似事件监听的东西,在点击的时候去做一些跳转处理。之后在这个具体的处理过程中,我们使用Intent对象来实现传递值,设置从当前Activity跳转到那个Activity.也可以使用Intent调用系统的功能。
小结:
举个例子,在BS还是在CS中,页面窗体传值都是必不可少的东西,到了安卓开发这里,又出现了这类东西;所以根据前面东西的学习,类推下,可以对比得出安卓需要哪些基础的知识。