如果有人能帮助我解决创建自定义视图(自定义按钮)时出现的一点图像缩放问题,那我就会徘徊? 因此,我使用自定义构造函数和几个方法创建了一个自定义视图类:
public class GamesButton extends View {
public int imageID;
public Bitmap image;
public GamesButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public GamesButton(Context context, int resImage) {
super(context);
this.imageID = resImage;
this.image = BitmapFactory.decodeResource(context.getResources(),imageID);
setFocusable(true);
setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// do something
}
});
setClickable(true);
}
public void onDraw(Canvas canvas) {
Paint textPaint = new Paint();
textPaint.setColor(Color.BLACK);
canvas.drawBitmap(image,0 , 0,null);
}
.
.
.
我也覆盖了onMeaure()和其他人,但我的自定义视图大小不是问题。
问题是我用作按钮或您单击的表面的位图图像。我无法缩放它,以便您可以在屏幕上看到整个图像。
有没有办法解决这个问题?
谢谢!
答案 0 :(得分:0)
您可以通过将按钮的背景设置为9patch图像文件来创建自定义按钮。您还可以使用选择器,并为按钮的不同状态提供不同的9patch图像文件。这比覆盖onDraw()简单得多。