如何将字符串从类传递到另一个类

时间:2013-05-23 15:16:18

标签: android parameter-passing

如何将公共类中的string传递给Java(android)中其他类的TextView

ClassA.java:

hereButton updateButton = (Button)findViewById(R.id.updateButton);
updateButton.setOnClickListener(new OnClickListener(){
    @Override
    public void onClick(View v) {
        String text = inputText.getText().toString();   
        outputText.setText(text);
    }
});

ClassB.java:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.new_game);
}

3 个答案:

答案 0 :(得分:2)

使用意图传递值。

在您的第一个活动中:

Intent i= new Intent("com.example.secondActivity");
// Package name and activity
// Intent i= new Intent(MainActivity.this,SecondActivity.Class);
// Explicit intents
i.putExtra("key",mystring);
// Parameter 1 is the key
// Parameter 2 is your value
 startActiivty(i);

在你的第二个Activity中检索它:

Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("key");
//get the value based on the key
}

答案 1 :(得分:2)

简单地说:您可以创建第三个类并创建一个静态字符串变量。然后,您可以使用以下内容访问同一项目中任何类中的该变量。

ClassC.java

public static String sharedValue = null;

您可以访问以下任何其他类(包含在同一个包中)。

ClassC.sharedValue = "Some Text";   //set value

String s = ClassC.sharedValue;   //get value

答案 2 :(得分:1)

在您的第一项活动中:

onclick()内,执行此操作

startActivity(new Intent(FirstActivity.this, SecondActivity.class).putExtra("key", "value to pass"));

然后在你的第二个活动中:

OnCreate()内,执行此操作:

Intent intent = getIntent();
String value = intent.getStringExtra("key");