我在我的应用程序中设置了重复的背景图像,但背景图像被裁剪,我希望它重复并填充整个屏幕而不进行裁剪。也许是向上或向下舍入。
答案 0 :(得分:0)
您可以通过getMeasuredWidth()
检测View的尺寸使用Canvas和Bitmap为它绘制一个合适的背景
说你的照片是100 x 50,视图是635 x 50
int viewWidth, picWidth. viewHeight;
Bitmap pic;
Paint paint;
// set corresponding values in the variables above
Canvas c=new Canvas();
Bitmap b=Bitmap.createBitmap(viewWidth, viewHeight,Config.ARGB_8888);
c.setBitmap(b);
int noOfPics= viewWidth/picWidth;
int margin=(viewWidth-(noOfPics*picWidth))/(noOfPics-1);
for(int i=0;i<noOfPics;i++){
c.drawBitmap(pic, i*picWidth+margin*(i-1),0,paint);
}