【发布时间】:2017-11-27 18:37:01
【问题描述】:
我需要帮助解决我面临的编辑文本问题。当有新用户进来时,edittext 会正常响应。但是,一旦用户保存了他/她的详细信息并退出应用程序并返回到同一页面;它们的详细信息将填充在相应的编辑文本中。现在的问题是,如果填充了他们的信息,我不希望启用编辑文本。我想在用户更改编辑文本中的内容之前设置一个警告(警报对话框)。如果用户对警告点击“是”,我希望 edittext 再次可编辑。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_personal__information);
fName = findViewById(R.id.personal_info_fName_ET);
lName = findViewById(R.id.personal_info_lName_ET);
userAge = findViewById(R.id.personal_info_userAge_ET);
userPhone = findViewById(R.id.personal_info_userPhone_ET);
getInfo();
fName.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
AlertDialog alertDialog = new AlertDialog.Builder(
Personal_Information.this).create();
alertDialog.setTitle("Make Changes");
alertDialog.setMessage("Do you want to make these changes?");
alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "YES",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//fName.setFocusable(true);
}
});
alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "NO",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
return false;
}
});
submit = findViewById(R.id.personal_info_submit_btn);
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
seralizePersonalInfo("Users Personal Info");
}
});
}
我想禁用“getInfo”方法中的edittext并使用onClick方法启用它。
public void getInfo(){
if (CurrentUserInfo.getFirstname() != null){
fName.setText(CurrentUserInfo.getFirstname());
lName.setText(CurrentUserInfo.getLastname());
userAge.setText(CurrentUserInfo.getUserAge());
userPhone.setText(CurrentUserInfo.getUserPhone());
}
}
我尝试过可聚焦、禁用但 onClickListener 没有任何响应。我不想在 XML“focuseable = false”中设置属性,因为如果没有要显示的详细信息,我希望编辑文本被聚焦。 提前致谢,如果您需要进一步说明,请告诉我。
【问题讨论】:
标签: java android android-edittext