Android-在对话框上的侦听器上更新TextView

蒂诺

我展示了一个对话框,用户可以在其中在Edittext中输入一个String值,并且我想在关闭该对话框后在主布局的textview中显示该值。当用户单击对话框的“确定”按钮时,文本视图会很好地刷新,但是我尝试通过关闭对话框中的关闭监听器来进行相同的操作,但我知道其余的代码都在运行。我试图使其在主线程上运行,但没有解决问题。这是代码,感谢您的帮助。

 final Dialog dialogStatus = new Dialog(Activity.this);
  dialogStatus.setContentView(R.layout.dialog_layout);

  Button Bok = (Button) dialogStatus.findViewById(R.id.bt_dialog_ok);
  final EditText ETname = (EditText) dialogStatus.findViewById(R.id.et_dialog);

  Bok.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
          update(String.valueOf(ETname.getText()));
          dialogStatus.dismiss();
      }
  });
     dialogStatus.setOnDismissListener(new DialogInterface.OnDismissListener() {

         @Override
         public void onDismiss(DialogInterface dialog) {
             // TODO Auto-generated method stub
             activity.runOnUiThread(new Runnable() {
                 @Override
                 public void run() {
                     update(String.valueOf(ETname.getText()));
                 }
             });
         }
     });
     dialogStatus.show();
 }

 public void update(String etValue){
     final SharedPreferences sharedPrefUnit = getSharedPreferences(SHARED_PREFS, 0);
     SharedPreferences.Editor settings = getSharedPreferences(SHARED_PREFS, MODE_PRIVATE).edit();
             settings.putString(STRING_VALUE, etValue);
             TextView.setText(sharedPrefUnitScore.getString(STRING_VALUE, etValue, ""));

     settings.commit();
 }
Shubham
public void update(String etValue){
    final SharedPreferences sharedPrefUnit = getSharedPreferences(SHARED_PREFS, 0);
    SharedPreferences.Editor settings = getSharedPreferences(SHARED_PREFS, MODE_PRIVATE).edit();
    settings.putString(STRING_VALUE, etValue);
    settings.commit();
    TextView.setText(etValue);
}

因为您在提交之前试图从共享首选项中获取值。如果您不提交,那么它将不会保存。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章