通过全局对象在Activity之间传递数据

来源:互联网 发布:百度软件下载官方网站 编辑:程序博客网 时间:2024/05/16 06:47

需要传递的全局对象,新建一个类,继承Application类

package main;import android.app.Application;public class MyApplication extends Application {    private String name;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public void onCreate() {        // TODO Auto-generated method stub        super.onCreate();    }}

(Android的入口是Application的onCreate方法)

(因为演示的是在两个Activity之间数据传递,需要两个Activity)

新建一个MainActivity
package main;

import tran.s.R;
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;

public class MainActivity extends Activity {
private Button btn_tiaozhuan;

@Overridepublic void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.main);    btn_tiaozhuan=(Button)findViewById(R.id.btn_tiaozhuan);    btn_tiaozhuan.setOnClickListener(new OnClickListener(            ) {        @Override        public void onClick(View v) {            // TODO Auto-generated method stub            Intent intent = new Intent(MainActivity.this,OtherActivity.class);            MyApplication app= (MyApplication)getApplication();//强制转换            app.setName("Linkinpark");            startActivity(intent);        }    });}

}

新建一个OtherActivity

package main;import android.app.Activity;import android.os.Bundle;import android.util.Log;public class OtherActivity extends Activity{    @Override    protected void onCreate(Bundle savedInstanceState) {        // TODO Auto-generated method stub        super.onCreate(savedInstanceState);        MyApplication app = (MyApplication) getApplication();        Log.d("OtherAcvity", app.getName());    }}当然还有一个问题需要在AndroidManifest.xml配置

0 0
原创粉丝点击