在android java中,如何从警报框中获取文本视图中的编辑文本值?

pexxcrt2  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(355)

我想从用户那里得到一些整数值,他/她点击一个警告框就会显示出来,并要求输入总预算。当他/她将总预算放入警报框字段时,它将在同一活动的文本视图中显示。提前谢谢。。。。。

pxy2qtax

pxy2qtax1#

每个对话框都有一个正按钮。这个正按钮有一个回调,您可以从edittext(如edittext.gettext)中获取文本,并为textview(如textview.settext)显示它。

AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
alertDialog.setTitle("Alert");
alertDialog.setMessage("Alert message to be shown");
alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "OK",
    new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
        // your work here
        textview.setText = Edittext.getText

            dialog.dismiss();
        }
    });
alertDialog.show();

如果你觉得这有帮助,请投赞成票。

41ik7eoe

41ik7eoe2#

请参阅有关自定义对话框的主题:如何在android中创建自定义对话框?
可以创建具有自定义布局的自定义对话框 R.layout.budget_dialog :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="#ffffffff">

  <EditText
    android:layout_width="250dp"
    android:layout_height="wrap_content"
    android:id="@+id/edit_budget"
    android:hint="Enter budget"
    android:layout_below="@+id/a"
    android:layout_marginTop="20dp"
    android:layout_marginLeft="4dp"
    android:layout_marginRight="4dp"
    android:layout_marginBottom="20dp"
    android:textSize="18sp"
    android:textColor="#ff000000"
    android:layout_centerHorizontal="true"
    android:gravity="center_horizontal" />

  <Button
    android:layout_width="wrap_content"
    android:layout_height="30dp"
    android:text="OK"
    android:id="@+id/btn_dialog"
    android:gravity="center_vertical|center_horizontal"
    android:layout_below="@+id/text_dialog"
    android:layout_marginBottom="20dp"
    android:background="@drawable/btn_flat_red_selector"
    android:layout_centerHorizontal="true"
    android:textColor="#ffffffff" />

</RelativeLayout>

然后通过以下方法获得值:

public void showDialog(Activity activity, String msg){
    final Dialog dialog = new Dialog(activity);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setCancelable(false);
    dialog.setContentView(R.layout.budget_dialog);

    final EditText edtBudget = dialog.findViewById(R.id.edit_budget);
    Button dialogButton = dialog.findViewById(R.id.btn_dialog);
    dialogButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //Get budget string value
            String budget = edtBudget.getText().toString();
            //Do something with your value
            dialog.dismiss();
        }
    });

    dialog.show();

}

相关问题