升级到Android Studio 3.2后,我一直收到来自Lint的“Probable bugs”警告,内容如下:
"Not annotated method overrides method annotated with @NonNull".
在更新到Android Studio 3.2之前我没有任何问题,我该怎么解决这个问题?
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
View row = convertView;
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
row = LayoutInflater.from(context).inflate(R.layout.gallery_view_row, parent, false);
holder.imageView = row.findViewById(R.id.filePath);
row.setTag(holder);
} else holder = (ViewHolder) row.getTag();
String file_path = objects.get(position);
GlideApp.with(context).load(MovieDB.IMAGE_URL + context.getResources().getString(R.string.galleryImgSize) + file_path)
.into(holder.imageView);
return row;
}
Android Studio 3.2更新前,Android Lint从未标记过这个方法,但现在我在该方法和“parent”参数上收到了两个标记。
以下是使用的两个导入。
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
问题仅存在于“ArrayAdapter”类中,其超类有这5个标为红色的导入。
import android.annotation.ArrayRes;
import android.annotation.IdRes;
import android.annotation.LayoutRes;
import android.annotation.NonNull;
import android.annotation.Nullable;
Kotlin
。您还可以尝试将@NonNull
添加到参数中,并删除方法的@NonNull
,然后检查看会发生什么。 - ʍѳђઽ૯ท