例如,这段代码:
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.GINGERBREAD) {
myCalendarView.setOnDateChangeListener(
new OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
Toast.makeText
(
getApplicationContext(), ""+dayOfMonth, 0
).show();
}
}
);
}
给出错误:
说明资源路径位置类型调用需要 API 级别 11(当前最低为 8):android.widget.CalendarView#setOnDateChangeListener example.java /example/src/com/example/example 第 20 行 Android Lint 问题
我明白为什么我在编译时得到这个错误。但是有没有办法将源 Java 类标记为仅在某些 API 级别 11 上使用?或者使用定义/类似的包围代码块,以便代码仅在 API 级别 11 以上的设备上进行后期绑定/jitted?实现我想要的最佳解决方案是什么?(这是在具有 CalendarView 功能的设备上提供一个活动。)