我想創建自定義 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
提交
取消