我编码到API级别11.所以为了得到显示器的宽度,我有以下功能
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) { Point size = new Point(); display.getSize(size); wIDth = size.x; } else { wIDth = display.getWIDth(); }
我做了所有这些,所以我不会得到弃用警告.但我仍然得到getWIDth的警告.为什么警告不会消失?
我也得到一个错误,因为getSize说呼叫要求API等级13但是检测到11.
解决方法:
IDE不够智能,无法实现您在此处尝试的 *** 作,因此您仍然会收到警告.
如果你想要摆脱它们,你可以定义两种方法:一种是在Honeycomb路线中执行代码,一种是注释@TargetAPI(13),另一种是使用注释@在另一条路径中执行代码. SuppressWarnings( “弃用”).就个人而言,我不担心.
例:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) { wIDth = getWIDthHoneycombMR2();}else { wIDth = getWIDthLegacy(display);}...@TargetAPI(13)public int getWIDthHoneycombMR2() { Point size = new Point(); display.getSize(size); return size.x;}@SuppressWarnings("deprecation")public int getWIDthLegacy(display display) { return display.getWIDth();}
总结 以上是内存溢出为你收集整理的即使我指定了api级别,Android也会弃用警告全部内容,希望文章能够帮你解决即使我指定了api级别,Android也会弃用警告所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)