从一个Acitivity获取文本到另一个Activity

时间:2018-04-29 13:40:15

标签: java android

我必须参加活动,“主要”和“购物”,我在“商店”中得到一个变量,我想在我的“主要” - 活动中使用,我该怎么做? 感谢帮助。我想在我的“Main”类中使用intCountValue2。 这是我的整个商店代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_shop);

    btnBuyClickMultiplier = (Button) findViewById(R.id.ClickMultiplierButton);
    txtMultiplierCounter= (TextView) findViewById(R.id.ClickMultiplier);

    btnBuyClickMultiplier.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String CountValue2= txtMultiplierCounter.getText().toString();
            int intCountValue2 = Integer.parseInt(CountValue2);
            intCountValue2++;
            txtMultiplierCounter.setText(String.valueOf(intCountValue2));
        }
    });

    configureBackButton1();
}

private void configureBackButton1() {
    Button BackButton1 = (Button) findViewById(R.id.BackButton1);
    BackButton1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            finish();
        }
    });
}

2 个答案:

答案 0 :(得分:1)

最简单的方法是将你的变量“shop”声明为public和static,如下所示:

public static String shop;

然后您可以在Main活动中调用该变量,如下所示:

ShopActivity.shop;

答案 1 :(得分:1)

在开始Android编程之前,您必须对面向对象编程有很好的了解。但是,要解决您的问题,您可以尝试使用Getter and Setter method概念(在这种特殊情况下,只需要getter)。要在您的特定情况下执行此操作:

  • 首先,在你的Shop类中声明一个私有变量(显然不在任何方法之外,如 - onCreate()左右),如下所示:

    private int count;
    
  • 然后,在Shop类中创建一个公共方法,如下所示:

    public int getCount() { 
        return this.count; 
    } 
    
  • 现在,在onCreate()课程的Shop方法中,在setOnClickListener的{​​{1}}内,将btnBuyClickMultiplier的值设为{{ 1}}像这样:

    count
  • 最后,您可以从intCountValue2类中创建的btnBuyClickMultiplier.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String CountValue2= txtMultiplierCounter.getText().toString(); int intCountValue2 = Integer.parseInt(CountValue2); intCountValue2++; txtMultiplierCounter.setText(String.valueOf(intCountValue2)); count = intCountValue2; } }); 类的实例中访问intCountValue2变量的值,如下所示:

    Shop

希望你明白。