我正在尝试按照 Android 开发人员网站的说明进行操作,但我一定是做错了什么。
我尝试创建自定义 ImageView 并在其上绘制 2 个位图。
活动
public class TestActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_layout);
LinearLayout left = (LinearLayout) findViewById(R.id.container);
ModuleImageView iv = new ModuleImageView(this);
left.addView(iv);
iv.invalidate();
}
}
图像视图
public class ModuleImageView extends ImageView{
public ModuleImageView(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
Bitmap b1 = BitmapFactory.decodeResource(getResources(), R.drawable.main_engine);
Bitmap b2 = BitmapFactory.decodeResource(getResources(), R.drawable.energy);
canvas.drawBitmap(b1, 0, 0, null);
canvas.drawBitmap(b2, 5, 5, null);
super.onDraw(canvas);
}
}
屏幕上没有任何显示,这可能是因为 onDraw 方法从未执行过。