如何从 DialogFragment 更改 Activity 的 textView?
How can I change the textView of an Activity from a DialogFragment?
这是 activity
的 java 文件
private TextView tv;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu_agente);
tv = (TextView) findViewById(R.id.Estado);
}
//Método para el bottón rojo
protected void BotonRojo(View view){
DialogFragment dialogFragment = new DialogoOcupado();
dialogFragment.show(getSupportFragmentManager(),"Un Dialogo");
}
Thats the DialogFragment class(extends DialogFragment)
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Aviso")
.setMessage("Vas a pasar a estado Ocupado, estás seguro?")
.setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
}
)
.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
})
.setNeutralButton("Más Tarde", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
return builder.create();
}
我想在用户按下按钮 "Aceptar" 时更改 TextView(tv)
。我该怎么做?我正在学习编程 Android 抱歉。
试试这个,
public void changeText(String text){
textView.setText(text);
}
来自对话片段,
((Your activity)getActivity()).changeText(text);
有很多方法可以做到这一点。 我认为最简单的就是这个...
在您的 Activity
中创建一个方法。并从 Dialog
.
调用它
((YourActivity)getActivity()).changeStatus("pass anything");
在你的 Activity
.
中创建 changeStatus()
方法
public void changeStatus(String s){
tv.setText(s);
}
这是 activity
的 java 文件private TextView tv;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu_agente);
tv = (TextView) findViewById(R.id.Estado);
}
//Método para el bottón rojo
protected void BotonRojo(View view){
DialogFragment dialogFragment = new DialogoOcupado();
dialogFragment.show(getSupportFragmentManager(),"Un Dialogo");
}
Thats the DialogFragment class(extends DialogFragment)
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Aviso")
.setMessage("Vas a pasar a estado Ocupado, estás seguro?")
.setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
}
)
.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
})
.setNeutralButton("Más Tarde", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
});
return builder.create();
}
我想在用户按下按钮 "Aceptar" 时更改 TextView(tv)
。我该怎么做?我正在学习编程 Android 抱歉。
试试这个,
public void changeText(String text){
textView.setText(text);
}
来自对话片段,
((Your activity)getActivity()).changeText(text);
有很多方法可以做到这一点。 我认为最简单的就是这个...
在您的 Activity
中创建一个方法。并从 Dialog
.
((YourActivity)getActivity()).changeStatus("pass anything");
在你的 Activity
.
changeStatus()
方法
public void changeStatus(String s){
tv.setText(s);
}