在Android中,Application類是用來維護應用程序全局變量的。每次,應用程序啓動,都會自動創建一個Application類的對象並且唯一。所以,可以通過繼承Application類的自定義類MyApplication類進行全局變量管理。
1、MyApplication類的代碼如下:
public class MyApplication extends Application { private int userId = -1; public int getUserId() { return userId; } public void setUserId(int userId) { this.userId = userId; } }
2、需要在清單文件AndroidManifest.xml裏修改Application的創建對象爲MyApplication。
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme" android:name=".MyApplication">...
3、如何使用
(備註:主要是通過getApplication()方法來獲取到全局變量類對象MyApplication)
public class MainActivity extends AppCompatActivity { private TextView tvContent; private MyApplication myApplication; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myApplication = (MyApplication) getApplication(); tvContent = findViewById(R.id.Main_tvContent); tvContent.setText(myApplication.getUserId() + ""); tvContent.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { myApplication.setUserId(1); tvContent.setText(myApplication.getUserId() + ""); } }); } }