从EditText获取数据

时间:2015-03-21 12:07:06

标签: java android

我正在尝试创建一个包含EditText和Button的简单Android应用程序。用户将输入他的数据,此应用程序将向他显示数据为Toast。

现在我遇到的问题是,每当用户按下按钮时,它只显示一个空白的吐司。这是我的代码

 EditText et;
String data;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    bsave=(Button) findViewById(R.id.bsave);
    et=(EditText) findViewById(R.id.editText1);

    data=et.getText().toString();



    bsave.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            Log.v("EditText",et.getText().toString());
            Intent in=new Intent(MainActivity.this,SecondAct.class);
            in.putExtra("DATA", data);
            Toast.makeText(MainActivity.this, data, Toast.LENGTH_SHORT).show();



        }
    });
}

请帮帮我。在此先感谢!!!!

3 个答案:

答案 0 :(得分:3)

你在oncreate()中调用gettext(),当编辑框中根本没有文本时..所以你的onClick()里面的日志会显示数据但是toast永远不会显示这个代码的任何东西,因为变量数据是“ “..

答案 1 :(得分:2)

你应该这样做

 bsave.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

        data=et.getText().toString();
        Toast.makeText(MainActivity.this,data, Toast.LENGTH_SHORT).show();

    }
});
按钮onClick(...)

中的

答案 2 :(得分:1)

如上所示,您需要将数据保存在Click侦听器上的Button内的EditText中。由于您的代码现在只要创建编辑文本,文本就会保存到数据变量中,但您希望在单击按钮后立即设置该文本。