在android中,如何将最后一个字符串从一个活动转移到另一个活动?
我知道这一点,而且效果很好在android中,如何将最后一个字符串从一个活动转移到另一个活动?,android,final,data-transfer,Android,Final,Data Transfer,我知道这一点,而且效果很好 Intent i1 = new Intent(Login.this, Welcome.class); i1.putExtra("username","the name"); startActivity(i1); 在下一个布局中: String username = getIntent().getStringExtra("username"); public final String ADMIN_USERNAME= getIn
Intent i1 = new Intent(Login.this, Welcome.class);
i1.putExtra("username","the name");
startActivity(i1);
在下一个布局中:
String username = getIntent().getStringExtra("username");
public final String ADMIN_USERNAME= getIntent().getStringExtra("admin_username");
但我需要传输最后一个字符串,我尝试了这个,但不起作用:
public static final String ADMIN_USERNAME= "user";
Intent intent = new Intent(Login.this,SignUp.class);
intent.putExtra("admin_username",ADMIN_USERNAME);
startActivity(intent);
在下一个布局中:
String username = getIntent().getStringExtra("username");
public final String ADMIN_USERNAME= getIntent().getStringExtra("admin_username");
我收到这个错误:
Attempt to invoke virtual method 'java.lang.String android.content.Intent.getStringExtra(java.lang.String)' on a null object reference
将字符串常量声明为静态时,如下所示:
public static final String ADMIN_USERNAME= "user";
您不需要使用intent extras来访问另一个活动中的值,只需直接访问ADMIN_USERNAME字符串常量:
if (someString.equals(MyActivity.ADMIN_USERNAME)) {
//Do something....
}
你的意图是无效的。这是生命周期中的早期呼叫 字符串用户名=getIntent().getStringExtra(“管理员用户名”) 如果您在onAttach内部调用,请确保在onCreate中调用此线路 还要确保你的钥匙是正确的。请注意,我还将其改为“管理员用户名” 祝你好运
Emre您能提供更多信息吗?例如,你犯了什么错误?也许是为了让我们检查您的命名空间范围而使用的完整类?对于像您这样的字符串常量,只需将其设置为静态,并在其他活动中直接访问它know@EmreAktürk更新了错误imgetting@DanielNugent你能示范一下吗?