0

我有这段代码可以使用文本视图创建一个带有可点击链接的警报对话框:

    public static class MyOtherAlertDialog {

         public static AlertDialog create(Context context) {
          final TextView message = new TextView(context);
          // i.e.: R.string.dialog_message =>
                    // "Test this dialog following the link to dtmilano.blogspot.com"
          final SpannableString s = 
                       new SpannableString(context.getText(R.string.dialog_about));
          Linkify.addLinks(s, Linkify.WEB_URLS);
          message.setText(s);
          message.setMovementMethod(LinkMovementMethod.getInstance());

          return new AlertDialog.Builder(context)
           .setTitle(R.string.about)
           .setCancelable(true)
           .setIcon(android.R.drawable.ic_dialog_info)
           .setPositiveButton("ok", null)
           .setView(message)
           .create();
         }
        }

但是不知道具体怎么称呼

我试过了:

                  MyOtherAlertDialog variable = new MyOtherAlertDialog();
                  variable.create(this);

但是没有运气,我应该如何称呼这个类?

4

3 回答 3

0

你正在寻找的是

AlertDialog dialog = MyOtherAlertDialog.create(this);
dialog.show();

这是相当基本的java。如果你需要问这个问题,也许你应该从学习一些基础知识开始。

于 2013-07-09T15:24:09.360 回答
0

要显示对话框,请尝试使用此

MyOtherAlertDialog.create(this).show();

实际上,Dialog它是从您的代码创建的,但由于您没有调用show()方法,因此未显示。

就像create() 方法一样static,你应该以某种static方式访问​​它。

于 2013-07-09T15:25:20.333 回答
0

StinePike 和 Alejs G 的回答是正确的。只想补充一点,您已经声明了create方法static。因此,您需要使用类名来调用该方法。
这就是为什么它应该是

MyOtherAlertDialog.create(this);

相同的概念适用于变量。

于 2013-07-09T15:29:42.690 回答