请问如何接收edittext的内容

请问如何接收edittext的内容

//设置文本输入的监听器
 class EditTextListener implements OnKeyListener{
  @Override
  public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
   // TODO Auto-generated method stub
   person.setName(editText_name.getText());
   return false;
  }
  
 }
 这是我设置的监听器,接收edittext的内容,传入到person类中的name下,但是一在edittext内输入程序立刻报错


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

EditText的内容可以通过findViewById()方法,例如以姓名为例:

ed_name = (EditText) findViewById(R.id.ed_name);

然后获取对应值的时候就可以通过如下方式获取

ed_name.getText().toString()

你这里setName的时候getText()后面是不是缺少了toString()方法。

  • 幕布斯1273652 提问者 #1
    是的 确实少了toString方法 那监听器需要什么时候设置呢
    2018-04-03 22:31:23
irista23 2018-04-04 09:49:13

为EditText添加addTextChangedListener()监听器,具体代码如下:

XXXXX.addTextChangedListener(new TextWatcher() {
   // 第一个执行
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
   ……
    }
    // 第二个执行
    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {
    ……
    }
    // 第三个执行
    @Override
    public void afterTextChanged(Editable s) {
    ……
    }
});


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师