我正在使用类似下面的drawables作为渐变背景:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#ffffff" android:endColor="#cccccc" android:angle="-90" android:dither="true" /> </shape>
这会在模拟器上产生带状渐变,当我拍摄模拟器的截图(使用Eclipse)时,结果甚至更差:
为什么?以及如何解决这个问题?虽然我在drawables的XML中使用android:dither =“true”并在Activity的onCreate()中设置它:
getWindow().setFormat(PixelFormat.RGBA_8888); getWindow().addFlags(WindowManager.LayoutParams.FLAG_DITHER);
顺便说一下,蓝色部分是原生动作栏,灰色渐变是ListView行,背景是drawable.
解决方法
只是为了确保阅读此问题的每个人都能看到解决方案:
正如davehale23和Chris Stratton指出的那样,问题不在于Eclipse或应用程序被“拍照”.问题是Android模拟器,它显然使用了减少的位深度.
因此,如果获取应用程序的屏幕截图,则应始终使用真实设备.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。