我想创建自定义 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");
}
添加回答
举报
0/150
提交
取消