为了账号安全,请及时绑定邮箱和手机立即绑定

如何从扩展活动覆盖方法?

如何从扩展活动覆盖方法?

梦里花落0921 2022-07-14 17:29:03
我有 2 个活动。一是AlertDialogActivity& 二是MainActivity。我AlertDialogActivity在MainActivity.像这样public class MainActivity extends AlertDialogActivity现在如何覆盖AlertDialogActivity我的方法MainActivity?警报对话活动:package com.jimmytrivedi.alertdialog;import android.app.AlertDialog;import android.app.Dialog;import android.content.Context;import android.os.Bundle;import android.widget.EditText;import android.widget.TextView;import androidx.appcompat.app.AppCompatActivity;public class AlertDialogActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_alert_dialog);        showAlertDialog(AlertDialogActivity.this);    }    private void showAlertDialog(final Context context) {        // 1. Instantiate an <code><a href="/reference/android/app/AlertDialog.Builder.html">AlertDialog.Builder</a></code> with its constructor        AlertDialog.Builder builder = new AlertDialog.Builder(AlertDialogActivity.this);// 2. Chain together various setter methods to set the dialog characteristics        builder.setMessage("How are you?")                .setTitle("Hello");// 3. Get the <code><a href="/reference/android/app/AlertDialog.html">AlertDialog</a></code> from <code><a href="/reference/android/app/AlertDialog.Builder.html#create()">create()</a></code>        AlertDialog dialog = builder.create();        dialog.show();    }}
查看完整描述

3 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

如果您希望其他类能够调用它,请将其showAlertDialog protected改为,甚至公开。private


protected void showAlertDialog(final Context context) {


}

私有方法不能被覆盖。


查看完整回答
反对 回复 2022-07-14
?
慕工程0101907

TA贡献1887条经验 获得超5个赞

如果你想覆盖一个方法使用 抽象 关键字


public abstract class AlertDialogActivity extends AppCompatActivity {



@Override

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_alert_dialog);

    showAlertDialog(AlertDialogActivity.this);

}


  public abstract void showAlertDialog(final Context context) {


    // 1. Instantiate an <code><a href="/reference/android/app/AlertDialog.Builder.html">AlertDialog.Builder</a></code> with its constructor

    AlertDialog.Builder builder = new AlertDialog.Builder(AlertDialogActivity.this);


  // 2. Chain together various setter methods to set the dialog characteristics

    builder.setMessage("How are you?")

            .setTitle("Hello");


   // 3. Get the <code><a 

  href="/reference/android/app/AlertDialog.html">AlertDialog</a></code> from <code><a 

  href="/reference/android/app/AlertDialog.Builder.html#create()">create()</a></code>

    AlertDialog dialog = builder.create();

    dialog.show();



}


查看完整回答
反对 回复 2022-07-14
?
largeQ

TA贡献2039条经验 获得超7个赞

方法应该具有相同的名称和类型。方法也不应该是私有的。



查看完整回答
反对 回复 2022-07-14
  • 3 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信