版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/f2006116/article/details/87527113
Android应用中的Application可以作为Activity中的“公共访问区”,充当存取中介,在Activity之前传递数据。
具体代码示例如下:
1.构建Application类
package com.hyzing;
import android.app.Application;
public class MySystemAppcation extends Application{
private int curIndex;
public int getCurIndex() {
return curIndex;
}
public void setCurIndex(int curIndex) {
this.curIndex = curIndex;
}
@Override
public void onCreate() {
super.onCreate();
}
@Override
public void onTerminate() {
super.onTerminate();
}
}
2.声明Application
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.hyzing"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" />
<application android:name=".MySystemAppcation"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".SystemtestActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".PrintActivity"
android:label="@string/app_name" >
</activity>
<activity
android:name=".PrintAgainActivity"
android:label="@string/app_name" >
</activity>
</application>
</manifest>
3.构建Activity并通过Application传递数据
package com.hyzing;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
public class SystemtestActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
MySystemAppcation application = (MySystemAppcation) this
.getApplication();
System.out.println("++++++++++++++"+application);
Log.i("data", "===============" + application.getCurIndex());
application.setCurIndex(5);
Intent intent = new Intent();
Bundle bundle = new Bundle();
bundle.putString("checkIn", "0");
bundle.putBoolean("managerUser", true);
intent.putExtras(bundle);
intent.setClass(SystemtestActivity.this, PrintActivity.class);
startActivity(intent);
}
}
package com.hyzing;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
public class PrintActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MySystemAppcation application = (MySystemAppcation) this
.getApplication();
Log.i("data", "" + application.getCurIndex());
application.setCurIndex(6);
Intent intent = new Intent();
Bundle bundle = new Bundle();
bundle.putString("checkIn", "0");
bundle.putBoolean("managerUser", true);
intent.putExtras(bundle);
intent.setClass(PrintActivity.this, PrintAgainActivity.class);
startActivity(intent);
}
}
4.构建Activity查看参数变化
package com.hyzing;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class PrintAgainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final MySystemAppcation application = (MySystemAppcation) this
.getApplication();
Log.i("data", "" + application.getCurIndex());
}
}
代码参考自:https://blog.csdn.net/liuwang888/article/details/84147925
类似文章:https://blog.csdn.net/su20145104009/article/details/50654638