Android - 将值从1页传递到下一页

时间:2012-01-13 11:31:23

标签: java android android-intent

我有我的回答,我是从按钮onClick外面调用文本值,下面是正确的代码:

    // PAGE 1

    Button submit = (Button)findViewById(R.id.btnsubmit);
    submit.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v){
            EditText value= (EditText) findViewById(R.id.VALUETOPASS);
            final String VALUE= value.getText().toString();
        Intent i = new Intent(page1.this, page2.class);
        i.putExtra("ARRIVING_FROM", VALUE);
        i.putExtra("TEST", "test");
        startActivity(i);
        }
    }); 

    // PAGE 2

    Intent i = getIntent();
    Bundle b = i.getExtras();
    String newText = b.getString("ARRIVING_FROM")+" "+ b.getString("TEST");

全部谢谢

5 个答案:

答案 0 :(得分:0)

您应该在onclick处理程序中执行VALUE= value.getText().toString();。设置它的方式,它将从textview开始(它是空的)获取文本,并将此空字符串传递给第二个intent。

答案 1 :(得分:0)

在用户有机会输入任何内容之前,您正在从文本字段开始将文本读取到VALUE。相反,当您想要使用它时,请阅读数据。

答案 2 :(得分:0)

试试这个

String value = getIntent().getStringExtra("ARRIVING_FROM");

String test = getIntent().getStringExtra("TEST");

答案 3 :(得分:0)

您需要从onClick处理程序中的文本框中获取值。

答案 4 :(得分:0)

您需要在onclick中获取textView值,而不是之前。像这样:

// PAGE 1
Button submit = (Button)findViewById(R.id.btnsubmit);
submit.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v){

    EditText value= (EditText) findViewById(R.id.VALUETOPASS);
    final String VALUE= value.getText().toString();

    Intent i = new Intent(page1.this, page2.class);
    i.putExtra("ARRIVING_FROM", VALUE);
    i.putExtra("TEST", "test");
    startActivity(i);
    }
});