surfaceview图像拉伸问题

在surfaceview的使用时,发现一个现象:

1、当AndroidManifest.xml文件中定义了uses-sdk属性时,使用drawBitmap(Bitmap bitmap, float left, float top, Paint paint)画图时,显示结果为图片的实际大小。

2、当AndroidManifest.xml文件中不定义了uses-sdk属性时,使用drawBitmap(Bitmap bitmap, float left, float top, Paint paint)画图时,显示结果为图片拉伸后的显示。

<uses-sdk> 是用来描述该应用程序可以运行的最小和最大API级别,以及应用程序开发者设计期望运行的平台版本。由于安卓平台的碎片化,可以通过它来解决系统版本上的安装和兼容性体验问题。具体的相关知识看这篇博客就差不多了 http://blog.csdn.net/fuzhengchao/article/details/28121193。因此,在不指定uses-sdk属性时,系统会以兼容模式运行程序。

为了进一步确定问题的原因,我调整了uses-sdk中minSdkVersion和targetSdkVersion的值,发现在不指定targetSdkVersion的情况下(此时targetSdkVersion的值默认等于minSdkVersion),当minSdkVersion<=3时,现象同现象2;当minSdkVersion>=4时,现象同现象1 。查看谷歌官方的api版本特性(http://www.android-doc.com/about/versions/android-1.6-highlights.html)时可以发现以下特性:

Expanded support for screen densities and resolutions

Android 1.6 adds screen support that enables applications to be rendered properly on different display resolutions and densities. Developers can also specify the types of screens supported by their application.

即从android1.6才开始加入屏幕适配的黑科技(严肃脸),而这之前统一输出为569*320.

转载于:https://www.cnblogs.com/porco-zheng/p/5420796.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值