**
android studio 创建全局变量
**
简介
android studio 全局变量即要在应用全部生命周期内都存在的变量,现实践通过建立Application类来实现全局变量,效果为在第一个activity内改变全局变量的值并在第二activity个里面展示
实践
一 创建
首先建立Application的子类
二 编写子类
application代码段
public String getB(){
return this.b;
}
public void setB(String c){
this.b = c;
}
@Override
public void onCreate(){
b = "monster";
super.onCreate();
}
三 mainfest.xml中声明
android:name=".application"
四 在第一个activity里面改变全局变量
package com.example.test_4;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//改变全局变量
application app =(application)getApplication();
app.setB("我是第一个activity改变的值");
//按钮跳转第二个activity
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
startActivity(intent);
}
});
}
}
五 在第二个activity里面获取全局变量并展示
package com.example.test_4;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class Main2Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
application bpp =(application)getApplication();
TextView tv = findViewById(R.id.textView);
tv.setText(bpp.getB());
}
}