java - 有没有办法对方法的声明声明 suppresswarnings ?

标签 java android suppress-warnings

我有一个返回值的静态方法 Magic Constant . 每次我访问我的代码中的方法时,我都会收到这样的警告:

Must be one of: Toast.LENGTH_SHORT, Toast.LENGTH_LONG

当我将 @SuppressWarnings("MagicConstant") 添加到我想要访问返回 Toast.LENGTH_SHORTToast.LENGTH_LONG 的方法的方法时 警告消失。 但是每次我想使用我的静态方法时,我都必须添加这个 suppresswarnings。这很烦人。有没有办法将此警告直接添加到返回两个值之一的方法中?

我试过这个:

@SuppressWarnings("MagicConstant")
    public static int getToastDuration() {
        return ((statement) ? Toast.LENGTH_SHORT : Toast.LENGTH_LONG);
    }

但这行不通。 我仍然必须将 @SuppressWarnings("MagicConstant") 添加到我要使用的方法 getToastDuration()

我收到此警告的示例:

public void method() {
Toast.makeText(this,"text",Preferences.getToastDuration()).show();
}

Toast 类是 Android 中的一个:http://developer.android.com/reference/android/widget/Toast.html

最佳答案

要回答您的实际问题,不,因为警告是在代码分析器未正确识别 Preferences.getToastDuration()makeText 调用中触发的实际上确实会返回批准的 int 值之一。无论哪种工具向您发出警告(IDEA?)都未能对代码进行足够深入的研究。我不认为 MagicConstant 警告是标准的,我会为此打开一个错误报告。

关于java - 有没有办法对方法的声明声明 suppresswarnings ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18313829/

相关文章:

java - 如何将改造的回调从 Activity 移动到类

android - 错误资源 bool fb_auto_log_app_events_enabled

error-handling - 如何隐藏COM错误?

c - 在源代码中部分禁用 gcc 中的迂腐警告

java - JDBC 中 Types.NULL 的使用

java - 文本不会显示在文本框(单选按钮)上

java - Android 服务 android.os.BinderProxy 错误

android 在代码中设置 google mapView v2 API key

parsing - 使用 pest 时如何修复枚举缺失的文档?

java - Sqlite 数据库更新行成为数据库的最后一行