【问题标题】:Use getText() and setText() Method in one XML for Android在 Android 的一个 XML 中使用 getText() 和 setText() 方法
【发布时间】:2012-01-07 17:38:05
【问题描述】:

我正在尝试创建一个 xml 来获取 editText 字段的文本。虽然它有效,但我只为最后一个字段输入文本。 这是我的代码:

TextView textOut;
EditText getInput;

TextView textOut1;
EditText getInput1;

TextView textOut2;
EditText getInput2;

TextView textOut3;
EditText getInput3;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.account);

    textOut = (TextView) findViewById(R.id.textView6);
    getInput = (EditText) findViewById(R.id.editText1);
    Button ok = (Button) findViewById(R.id.submit);
    ok.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            textOut.setText(getInput.getText());
        }
    });
    textOut1 = (TextView) findViewById(R.id.textView7);
    getInput1 = (EditText) findViewById(R.id.editText2);
    Button ok1 = (Button) findViewById(R.id.submit);
    ok1.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            textOut1.setText(getInput1.getText());
        }
    });

我正在尝试获取所有键入文本字段的文本。我有四个字段(我在代码中只显示了两个)

有没有什么方法可以让我为所有 editText 字段输入文本?

谢谢。

编辑:

 TextOut = (TextView) findViewById(R.id.textView6);
    getInput = (EditText) findViewById(R.id.editText1);
    textOut1 = (TextView) findViewById(R.id.textView7);
    getInput1 = (EditText) findViewById(R.id.editText2);
    Button ok = (Button) findViewById(R.id.submit);
    ok.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            textOut.setText(getInput.getText());
        }
    });

【问题讨论】:

  • 点击按钮时您想获取所有文本字段吗?
  • thinksteep 是的,但我只从最后一个 editText 获得输入。

标签: android xml gettext settext


【解决方案1】:

在您获得文本字段中的值后,您必须将其存储在字符串变量中才能访问它。你在你的 editText 上调用 getText() 但你为什么不调用 toString() 呢?将您的第二个 onClick 更改为此。

public void onClick(View v) {
        // TODO Auto-generated method stub
       String s =  getInput1.getText().toString();
       textOut1.setText(s);


    }
});

【讨论】:

  • 我还是一样的结果。
  • 你有两个按钮,ok 和 ok1。它们都有相同的参考 ID,正在尝试修复它。
  • 它们是同一个按钮,但我似乎无法保持它们的变量名称相同,因为我收到了一个错误。
  • 让我猜猜,是不是“重复变量”错误?创建一个 Button 实例,使用 findViewById(R.id.submit) 对其进行膨胀,然后为其设置一个侦听器。您正在为同一个按钮创建一个新的侦听器实例,我相信这是您的问题的一部分
  • 我这样做了: textOut = (TextView) findViewById(R.id.textView6); getInput = (EditText) findViewById(R.id.editText1); textOut1 = (TextView) findViewById(R.id.textView7); getInput1 = (EditText) findViewById(R.id.editText2);按钮 ok = (Button) findViewById(R.id.submit); ok.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // TODO 自动生成的方法存根 textOut.setText(getInput.getText()); } });
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多