如何在没有编译器警告的情况下在Android中编写代码?

Fiz*_*uzz 13 android

谷歌的文档说使用这种代码来确保新代码不会在旧平台上执行:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);
}
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,Eclipse仍然给我警告:"调用需要API级别11(当前最小值为7)".我想要的是将我的最低版本设置为低于Honeycomb的值,让上述条件语句保护我不在旧设备上运行新代码,并且没有编译器警告.

我该怎么做?

Ben*_*oli 9

@TargetApi(11)在方法之前添加.

  • 对于阅读本文的其他人来说,@ TargetApi似乎是一个很好的起点:为android.annotation.TargetApi添加一个导入,然后你可以将@TargetApi(11)放在目标该版本的方法的顶部.谷歌的文档暗示你可以把它放在条件语句中(http://tools.android.com/recent/lintapicheck),这就是我所要求的,但当我尝试时,我得到"注释TargetApi是不允许的地点." (2认同)