关于简单自定义View自适应的办法

  最近要实现自定义的view,记录下几点问题:

  1.onDraw方法中,最后自定义的view只会显示你实际使用的canvas的大小,这样画出来的图形边界会有被切割的感觉,所以我选择 用透明的paint在外围重新画一个大一点的图。(这个问题还有待解决,主要是onMesure还在看)

  2.对于出现的图形,在720*1080的手机上显示正常,当时到了1080*2000分辨率出现问题,显得很小,原因是这个canvas的绘图是建立在px(像素上面),所以我们为了更好的适应不同分辨率的机型,我们需要获取屏幕的宽度,然后设定一个基本的数值,根据屏幕的大小,进行比例的变换。比如说:我要在720的手机上画360px的直线,就是要占屏幕的一般,如果到了1080的屏幕那这就只能占1/3了,所以简单的做法,我们可以给他乘以1080/720(1.5)即可,换做小屏幕的手机,结果也是一样。


顺便记录下 关于bitmap的相关方法。

加载bitmap的方式多种多样,其中比较常用的就是通过bitmapfactory.decode······方法,这个方法可以将数据流和路径中的文件输出为图片。这种方法有些问题,那就是很占内存,具体的解决办法 还没有细看 (貌似是分片的意思)

还有creatbitmap的方法创建,但是我觉得,这个方法用来伸缩图片和裁剪更适宜。

你可能感兴趣的:(关于简单自定义View自适应的办法)