为了账号安全,请及时绑定邮箱和手机立即绑定

如何在扩展的 EditText 上的嵌套 onClick 中调用 super.setText?

如何在扩展的 EditText 上的嵌套 onClick 中调用 super.setText?

烙印99 2022-05-12 18:45:38
我想创建自定义 editText 当您单击 editText 时它会自动插入定义的文本。因此,我创建了扩展 editText 并实现 View.onClickListeners 的自定义 editText。但是在 onClick 方法中调用 super.setText 似乎不起作用。这是自定义editText的代码import android.content.Context;import android.view.View;public class CustomEditText extends android.support.v7.widget.AppCompatEditText implements View.OnClickListener {    Context context;    public CustomEditText(Context context) {        super(context);        this.context=context;    }    @Override    public void onClick(View view) {        super.setText("MY TEXT HERE");    }}所以在 MainActivity onCreate 我只需要声明和设置监听器        CustomEditText myText = new CustomEditText(this);        myText.setOnClickListener(new CustomEditText(this));        linearLayout.addView(myText);如果我将 super.setText 放在构造函数中,它会填充自定义编辑文本。但是如果我把它放在 OnClick 上,它并没有填充我的自定义编辑文本,即使它确实在 OnClick 中调用了 super.setText(调试时)这样做的目的是我想稍后在显示 datePicker 上创建自定义 editText 并在选择日期时输入日期。一切都应该在自定义 editText 类上完成,因此主 Activity 仅用于对象声明。
查看完整描述

1 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

您可以使用clicked视图来设置文本。


在你的内部试试这个onClick:


@Override

public void onClick(View view) {

    ((EditText)view).setText("MY TEXT HERE");

}


查看完整回答
反对 回复 2022-05-12
  • 1 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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