1 Activity简单跳转,

1.1 Activity的页面样式及跳转方式:

activity_a.xml

    

ActivityA.java

public class ActivityA extends Activity {private Button btn_submit;   //定义button局部变量    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_a);        btn_submit = (Button) findViewById(R.id.btn_submit);        btn_submit.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//Intent intent = new Intent();   //创建一个Intent对象//intent.setClass(ActivityA.this, ActivityB.class);   //描述起点和目标/*上面两种方式可以简写成如下代码*/Intent intent = new Intent(ActivityA.this, ActivityB.class);  //简写形式intent.putExtra("txt", "苏州科技大学");   //设置跳转值的传递startActivities(intent);    //开始跳转}});    }    protected void startActivities(Intent intent) {// TODO Auto-generated method stub    super.startActivity(intent);    }

activity_b.xml

ActivityB.java
public class ActivityB extends Activity {private TextView tvOut;@Overrideprotected void onCreate(Bundle savedInstanceState) {  //重写onCreate()方法super.onCreate(savedInstanceState);setContentView(R.layout.activity_b);   //绑定布局tvOut = (TextView) findViewById(R.id.tvOut);tvOut.setText(getIntent().getStringExtra("txt"));}}
Tip: 1,AndroidManifest.xml中需要添加代码 2,在ActivityA中默认没有实现
startActivities()方法调用时,需要先实现该方法。


1.2 实现关闭功能

activity_b.xml添加关闭按钮

ActivityB.java注意代码:
public class ActivityB extends Activity {private Button btnClose;@Overrideprotected void onCreate(Bundle savedInstanceState) {  //重写onCreate()方法super.onCreate(savedInstanceState);setContentView(R.layout.activity_b);   //绑定布局btnClose = (Button) findViewById(R.id.btnClose);btnClose.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {finish();}});}}
Tip: 1. Activity.finish():finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将活动推向后台,并没有立即释放内存,活动的资源并没有被清理;
    Activity.onDestory():系统销毁了这个Activity的实例在内存中占据的空间。在Activity的生命周期中,onDestory()方法是他生命的最后一步,资源空间等就被回收了。当重新进入此Activity的时候,必须重新创建,执行onCreate()方法。
      System.exit(0):调用System.exit(0)时,杀死了整个进程,这时候活动所占的资源也会被释放。

2 使用Bundle传递数据


ActivityA.java

public class ActivityA extends Activity {private Button btn_submit;   //定义button局部变量    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_a);        btn_submit = (Button) findViewById(R.id.btn_submit);        btn_submit.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//Intent intent = new Intent();   //创建一个Intent对象//intent.setClass(ActivityA.this, ActivityB.class);   //描述起点和目标/*上面两种方式可以简写成如下代码*/Intent intent = new Intent(ActivityA.this, ActivityB.class);  //简写形式//intent.putExtra("txt", "苏州科技大学");   //设置跳转值的传递//方式二:使用bundle方式传递数据Bundle data = new Bundle();data.putString("txt", "苏州科技大学");intent.putExtras(data);startActivities(intent);    //开始跳转}});    }

ActivityB.java

public class ActivityB extends Activity {private TextView tvOut;private Button btnClose;@Overrideprotected void onCreate(Bundle savedInstanceState) {  //重写onCreate()方法super.onCreate(savedInstanceState);setContentView(R.layout.activity_b);   //绑定布局tvOut = (TextView) findViewById(R.id.tvOut);//tvOut.setText(getIntent().getStringExtra("txt"));//方式二:使用bundle方式接收数据//得到数据Bundle data = getIntent().getExtras();String txt = data.getString("txt");tvOut.setText(txt);btnClose = (Button) findViewById(R.id.btnClose);btnClose.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {finish();}});}}
注: 1.使用bundle方式可以添加相对比较复杂的数据

3 取得传回的数据

ActivityB.java


public class ActivityB extends Activity {private TextView tvOut;private Button btnClose;@Overrideprotected void onCreate(Bundle savedInstanceState) {  //重写onCreate()方法super.onCreate(savedInstanceState);setContentView(R.layout.activity_b);   //绑定布局tvOut = (TextView) findViewById(R.id.tvOut);//tvOut.setText(getIntent().getStringExtra("txt"));//方式二:使用bundle方式接收数据//得到数据Bundle data = getIntent().getExtras();String txt = data.getString("txt");tvOut.setText(txt);btnClose = (Button) findViewById(R.id.btnClose);btnClose.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent();intent.putExtra("result", "计算机科学与技术");setResult(0, intent);   //指定返回值finish();}});}}

activity_a.xml

ActivityA.java

public class ActivityA extends Activity {private Button btn_submit;   //定义button局部变量private TextView tvOut;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_a);                tvOut = (TextView) findViewById(R.id.tvOut);        btn_submit = (Button) findViewById(R.id.btn_submit);        btn_submit.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//Intent intent = new Intent();   //创建一个Intent对象//intent.setClass(ActivityA.this, ActivityB.class);   //描述起点和目标/*上面两种方式可以简写成如下代码*/Intent intent = new Intent(ActivityA.this, ActivityB.class);  //简写形式//intent.putExtra("txt", "苏州科技大学");   //设置跳转值的传递//方式二:使用bundle方式传递数据Bundle data = new Bundle();data.putString("txt", "苏州科技大学");intent.putExtras(data);//startActivities(intent);    //开始跳转startActivityForResult(intent, 0);}});    }        @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {    String result = data.getStringExtra("result");    tvOut.setText(result);    super.onActivityResult(requestCode, resultCode, data);    }
注: 1,如果取得传回的数据,不能使用startActivities(intent),而是使用startActivityForResult(intent, 0);







更多相关文章

  1. mybatisplus的坑 insert标签insert into select无参数问题的解决
  2. python起点网月票榜字体反爬案例
  3. 《Android开发从零开始》——25.数据存储(4)
  4. Android系统配置数据库注释(settings.db)
  5. Android中不同应用间实现SharedPreferences数据共享
  6. android图表ichartjs
  7. android 创建桌面快捷方式 、插件
  8. Android内容提供者源码
  9. android源码下载方式

随机推荐

  1. android linux 命令记录
  2. Android(安卓)- Looper / Handler / Mess
  3. 如何通过Tesseract开源OCR引擎创建Androi
  4. TextView颜色
  5. android 调用.net 的webservice .
  6. 方法选择Android从SD卡中选择图片的三种
  7. Android(安卓)传感器(Sensor)API教程 (二
  8. 【Android入门】——模拟器的创建及常见
  9. android post数据到服务器端工具类(包括po
  10. Android(安卓)ContentProvider的介绍(很