zoukankan      html  css  js  c++  java
  • android.annotation.SuppressLint

    Lint是一个静态检查器,它围绕Android项目的正确性、安全性、性能、可用性以及可访问性进行分析。
    它检查的对象包括XML资源、位图、ProGuard配置文件、源文件甚至编译后的字节码。
    Lint包含了API版本检查、性能检查以及其他诸多特性。
    其中还有一个重要的改动是Lint可以使用@SuppressLint标注忽略指定的警告。
    lint官方的说法是 Improving Your Code with lint,应该是帮助提升代码的 ,
    如果不想用的话,可以右键点工程,然后在android tools 中,选择 clear lint marker 就没有这个错误了
    /*************************************************/
    @SuppressLint("NewApi") 在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion
    版本更高的方法,此时编译器会提示警告,
    解决方法是在方法上加上@SuppressLint("NewApi")或者@TargetApi()。
    那他们之间有什么区别呢,很简单,
    @SuppressLint("NewApi")屏蔽一切新api中才能使用的方法报的android lint错误
    @TargetApi() 只屏蔽某一新api中才能使用的方法报的android lint错误
    举个例子,某个方法中使用了api9新加入的方法,而项目设置的android:minSdkVersion=8,
    此时在方法上加@SuppressLint("NewApi")和@TargetApi(Build.VERSION_CODES.GINGERBREAD)都可以,以上是通用的情况。
    而当你在此方法中又引用了一个api11才加入的方法时,@TargetApi(Build.VERSION_CODES.GINGERBREAD)注解的方法又报错了,
    而@SuppressLint("NewApi")不会报错,这就是区别。
     
    当然,不管你使用了哪个注解,作用仅仅是屏蔽android lint错误,所以在方法中还要判断版本做不同的操作,比如:
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {  
               //  
            } else {// Pre GINGERBREAD  
               //  
    }  
    
    

     

  • 相关阅读:
    拖拽 上传文件
    复制文本消息
    zTree 显示为‘aa’,当选择aa时,传的参数为‘22’
    移动端 动画 启动硬件加速
    jquery 停止动画与切换
    CSS小技巧-怎样让每行多余的文字显示文省略号?
    CSS小技巧-两个盒子之间的间距问题
    CSS小技巧-为内盒子添加margin-top时,会带着父盒子一起下来,如何解决?
    小K的H5之旅-CSS基础(一)
    小K的H5之旅-HTML的基本结构与基本标签
  • 原文地址:https://www.cnblogs.com/liaojie970/p/5783390.html
Copyright © 2011-2022 走看看