Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将活动中的值传递给对话框并在Android Studio中显示_Java_Android_Xml - Fatal编程技术网

Java 如何将活动中的值传递给对话框并在Android Studio中显示

Java 如何将活动中的值传递给对话框并在Android Studio中显示,java,android,xml,Java,Android,Xml,您好,我有一个活动,我想将值从它传递到对话框,并在对话框文本视图中显示该值。 以下是包含我要传递给对话框的EditText的活动 p、 爪哇 public class piku_daily extends AppCompatActivity { private LayoutInflater inflater; String total = ""; @Override protected void onCreate(Bundle savedInstanceState) { super.on

您好,我有一个活动,我想将值从它传递到对话框,并在对话框文本视图中显示该值。 以下是包含我要传递给对话框的EditText的活动

p、 爪哇

public class piku_daily extends AppCompatActivity {
private LayoutInflater inflater;
String total = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_piku_daily);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
    public void Onclick(View v){
    Button button = (Button)v;
    String str = button.getText().toString();
    total+=str;

    EditText edit = (EditText)findViewById(R.id.piku_weka);
    edit.setText(total);
}
public void Onclear(View v){
    EditText edit = (EditText)findViewById(R.id.piku_weka);
    total="";
    edit.setText("");
}
public void Onplay(View v){
Mydialog dialog = new Mydialog();
dialog.show(getFragmentManager(), "Confirmation_Dialog");
}}
对话框代码为

public class Mydialog extends DialogFragment {
LayoutInflater inflater;
View v;

@Override
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState){

    inflater = getActivity().getLayoutInflater();
    v = inflater.inflate(R.layout.pikupop, null);
    TextView textview = (TextView) v.findViewById(R.id.piku_value);
    textview.setText(""+700);



    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());

    builder.setView(v).setPositiveButton("Ndio", new DialogInterface.OnClickListener() {              
        @Override
        public void onClick(DialogInterface dialog, int which) {


        }
    }).setNegativeButton("Hapana", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.cancel();

        }
    });

    return builder.create();

}}

我可以得到一个关于如何做的帮助吗?

在您的对话框上创建一个静态方法,如下所示:

public static MyDialog myDialog(Value what u need){
   MyDialog myDialog = new MyDialog();
   return myDialog;
}

之后,您可以在活动中调用此方法。它将与您的对话框一起返回,您可以在其中使用.show。在静态方法中,您可以保存您的值。

我没有正确理解您的观点,我想在对话框中使用的值是:编辑文本编辑=(编辑文本)findViewById(R.id.piku_wek);