我有一个java类,下面是代码
public class credentials {
public static String getName(String name) {
String name1 = name;
return name1;
}
}以下是我如何传递一个值
credentials.getName("Sample Name");
我的缺点是我怎样才能得到这个价值
如何获得从其他类传递的值?
这就像我用另一个活动传递它,而我需要从另一个活动中获得它。
发布于 2018-07-17 10:18:32
如果您想将数据从一个活动发送到另一个活动,那么您可以通过意图发送数据。
FirstActivity,通过意图向SecondActivity发送数据。
Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
intent.putExtra("Credential","your credential");
startActivity(intent);SecondActivity,接收来自Firstactivity的数据。
String getCredential = getIntent().getStringExtra("Credential");或
只需创建一个Model类,并使其所有变量和方法都是静态的,这样就可以在不使用Model类对象的情况下访问它。
public class Model{
public static String name;
public static String getName() {
return name;
}
public static void setName(String xName) {
name = xName;
}
}FirstActivity
Model.setName("opriday");SecondActivity
String getName = Model.getName();发布于 2018-07-17 10:15:28
这是一个非常基本的示例,用于演示如何将数据从一个活动传递到另一个活动(这里我使用Shareprefrence)
--------------------------Activity1-----------------------------------------
editText1=(EditText)findViewById(R.id.ed1);
editText2=(EditText)findViewById(R.id.ed2);
but=(Button)findViewById(R.id.btn);
sp=getSharedPreferences("mypref",MODE_PRIVATE);
but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String s=editText1.getText().toString();
String s1=editText2.getText().toString();
SharedPreferences.Editor editor=sp.edit();
editor.putString("user",s);
editor.putString("id",s1);
editor.commit();
gotomainactivity();
}
});
String userId=sp.getString("user",null);
String password=sp.getString("id",null);
if(userId!=null && password!=null){
gotomainactivity();
}
}
private void gotomainactivity() {
Intent intent=new Intent(MainActivity.this,Sharedatarecive.class);
startActivity(intent);
finish();
}
-----------------------------------------------------------------------------------Activity2------------
// receive data from activity1
sep=getApplicationContext().getSharedPreferences("mypref",MODE_PRIVATE);
TextView textView=(TextView)findViewById(R.id.t1);
TextView textView1=(TextView)findViewById(R.id.t2);
String s3=sep.getString("user",null);
String s4=sep.getString("id",null);
//display data in anctivity2
textView.setText(s3);
textView1.setText(s4);https://stackoverflow.com/questions/51378631
复制相似问题