Java 如何将活动中的值传递给对话框并在Android Studio中显示
您好,我有一个活动,我想将值从它传递到对话框,并在对话框文本视图中显示该值。 以下是包含我要传递给对话框的EditText的活动 p、 爪哇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
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);