将字符串从活动复制到另一个Android



开始时,我想对我的英语不好说,希望你能理解我。我想将一个字符串复制到另一个活动,因此我创建:

package com.example.kliker;
import android.app.Application;

public class GlobalClass extends Application{
    private String name;
    private String email;

    public String getName() {
        return name;
    }
    public void setName(String aName) {
       name = aName;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String aEmail) {
      email = aEmail;
    }
}

和在活动设置中使用:

final GlobalClass globalVariable = (GlobalClass) getApplicationContext();
globalVariable.setEmail("1");
globalVariable.setName("1");

当我想获得时:

final GlobalClass globalVariable = (GlobalClass) getApplicationContext();
a = globalVariable.getEmail();
b = globalVariable.getName();
mTextView.setText(a);

但是它不起作用?我应该刷新活动或类似活动?

http://speedy.sh/dvt94/desktop.rar清单,从我获得和设置的活动,活动集,活动获取

我想制作一项活动的数据和食物,我也想在其中时进行另一项活动,当我们单击食物时,它会发送有关自己的类别和选择食物的信息,主要活动下载该信息和通过它们构建图形句子

使用Bundle api -http://developer.android.com/reference/Randroid/android/os/bundle.html。

在您的A活动中 -

Intent intent = new Intent(A.this, B.class);
Bundle bundle = new Bundle();
bundle.putString("value", "String Value");
intent.putExtras(bundle);
startActivity(intent);

,在B活动中 -

Intent i = getIntent();
Bundle extras = i.getExtras();
String value = extras.getString("value");

您将对此http://hmkcode.com/android-passing-data-data-to-another-activities/

感兴趣

您两次实例化您的GlobalClass类,因此您会得到不同的变量。在同一活动中尝试这样的事情,看看它是否有效。

final GlobalClass globalVariable = (GlobalClass) getApplicationContext();
globalVariable.setEmail("1");
globalVariable.setName("1");
a = globalVariable.getEmail();
b = globalVariable.getName();
mTextView.setText(a);

我可以想到至少三个体面的选择:

1)使用单身人士(PROS-简单; Cons-不会在应用程序寿命中持续存在)。

2)使用共享流(易于研究);如果您真的将其用于应用程序的用户名(这是从示例中显示的)

3)使用意图从当前的活动触发下一个活动,然后将字符串作为额外的(intent.putextra(...),intent.getStringExtra(...))。

最新更新