【问题标题】:How to putExtra and getExra the string from any other activity? like a global variable?如何 putExtra 和 getExra 来自任何其他活动的字符串?像一个全局变量?
【发布时间】:2019-02-06 19:15:44
【问题描述】:

我想让主 Activity 上的每个按钮都为 putExra 设置一个按钮独有的不同字符串。然后,使用 getExtra 访问这些值。这就是我实施的方式。这是行不通的。请告诉我正确的实现。

这些行在第一个活动中

   public Intent writePatientData = new Intent();
   public void onClick(View view){
                    writePatientData.putExtra("SYSTEM", "Cardiovascular system");
                    startEntringPatientData();
   }

这是在第二个活动中

textView.setText(getIntent().getStringExtra("SYSTEM"));

【问题讨论】:

  • 你调用 startActivity() 方法了吗?
  • 没有。在startActivity之外
  • 您没有在 startActivity 方法上传递意图上下文。检查下面的答案。

标签: java android-studio android-intent


【解决方案1】:

用于将数据传递给另一个活动:

public Intent writePatientData = new Intent();
   public void onClick(View view){
                    writePatientData.putExtra("SYSTEM", "Cardiovascular system");
                    startEntringPatientData();
                    startActivity(writePatientData)
   }

然后,检索另一个活动的值:

String newString;
if (savedInstanceState == null) {
    Bundle extras = getIntent().getExtras();
    if(extras == null) {
        newString= null;
    } else {
        newString= extras.getString("SYSTEM");
    }
} else {
    newString= (String) savedInstanceState.getSerializable("SYSTEM");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-23
    • 1970-01-01
    • 2017-01-02
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    相关资源
    最近更新 更多