首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用需要API级别11 (当前最小值为XX) -用于AlertDialog.Builder.Ctor

调用需要API级别11 (当前最小值为XX) -用于AlertDialog.Builder.Ctor
EN

Stack Overflow用户
提问于 2014-05-15 09:54:32
回答 1查看 297关注 0票数 0

我尝试使用AlertDialog.Builder的构造函数,它得到一个上下文和一个主题:

代码语言:javascript
复制
AlertDialog.Builder b = new AlertDialog.Builder(this, 0);

它显示了我的Eclipse上的一个错误(标记为"Builder“类型):”调用需要API级别11 (当前最小值为7)“。

当我使用仅获取上下文(没有主题)的构造函数时,它不会显示此错误。

  1. 我希望能够部署我的应用程序也在老机器人(如2.1版等)。当AlertDialog.Builder是旧版本时,我是否可以方便地使用它的简单构造函数,以及在API 11和更高版本时使用更复杂的构造函数?
  2. 出于好奇,编译器如何知道使用某种方法所需的API版本?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-15 10:00:05

  1. 您可以在if子句上使用Build.VERSION.SDK_INT,以检查您的API级别是否高于或低于所需的级别(您可能需要添加一个注释来抑制来自该方法/类的API级别警告/错误)。
  2. 安卓·林特为你做的。它检查在某个API级别上允许哪些方法和ctors。

示例:

代码语言:javascript
复制
 if(Build.VERSION.SDK_INT >= 11) { 
   //API level 11 and above ctor here 
} else { 
  //Lower than API level 11 code here 
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23674858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档