0

我正在做警报对话框演示。它工作正常,但我在 MainActivity.java 文件中的“setButton”上找到了一行。听到是我的代码:

@SuppressWarnings("deprecation")
public void onClick(View arg0) {
            // Creating alert Dialog with one Button

            AlertDialog alertDialog = new AlertDialog.Builder(
                    MainActivity.this).create();

            // Setting Dialog Title
            alertDialog.setTitle("Alert Dialog");

            // Setting Dialog Message
            alertDialog.setMessage("Welcome to AndroidHive.info");

            // Setting Icon to Dialog

            // I got line hear........ over setButtob .........
            alertDialog.setButton("OK",
                    new DialogInterface.OnClickListener() {

                        public void onClick(DialogInterface dialog,
                                int which) {
                            // Write your code here to execute after dialog
                            // closed
                            Toast.makeText(getApplicationContext(),
                                    "You clicked on OK", Toast.LENGTH_SHORT)
                                    .show();
                        }
                    });

            // Showing Alert Message
            alertDialog.show();![enter image description here][1]

        }
    });`

你可以看到这里的图片,更明白我的意思。

4

2 回答 2

2

您的意思是您收到警告说该方法已弃用?

那是因为 setButton 不再使用,它​​已被弃用,相反你应该做这样的事情:

alertDialog.setPositiveButton("OK",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
    // blablabla
}
});

另请注意,您也可以获得类似字符串“OK”的东西:android.R.string.ok,这是推荐的方式;)

于 2013-04-21T11:51:20.230 回答
1

我浏览了网址图片,这使您的问题很清楚。这是因为该方法(setButton)已折旧。您正在使用

@SuppressWarnings("deprecation") 

在顶部。这可以防止发出警告消息并且您无法阅读警告消息(可能是:此方法已被贬值)。如果您删除顶线,那么它会告诉您为什么它在 setButton 上显示交叉线。见这里。它说这种方法在 API 级别 3 中已被贬低。

要了解如何正确使用它,您可以浏览使用Alert Dialog的官方文档页面。您还可以在此处查看教程。

于 2013-04-21T11:50:03.153 回答