如何从 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);
}