我试图在我的应用程序中叠加两个图像,但它们似乎在我的canvas.setBitmap()线上崩溃.我究竟做错了什么?
private void test() {
Bitmap mBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.t);
Bitmap mBitmap2 = BitmapFactory.decodeResource(getResources(), R.drawable.tt);
Bitmap bmOverlay = Bitmap.createBitmap(mBitmap.getWidth(), mBitmap.getHeight(), mBitmap.getConfig());
Canvas canvas = new Canvas();
canvas.setBitmap(bmOverlay);
canvas.drawBitmap(mBitmap, new Matrix(), null);
canvas.drawBitmap(mBitmap2, new Matrix(), null);
testimage.setImageBitmap(bmOverlay);
}
Run Code Online (Sandbox Code Playgroud) 我想把图像作为布局的背景.
首先,我正在创建一个drawable: Drawable d = Drawable.createFromPath("pathToImageFile");
在API级别8 layout.setBackground( d )的不支持和 layout.setBackgroundDrawable( d ) 不推荐使用 ,所以我需要使用
layout.setBackgroundResource(resourceID)
如何获取动态生成的drawable的resourceID.我正在使用此方法:
Drawable d = Drawable.createFromPath("pathToImageFile");
创造一个可绘制的.
有没有人知道关于resource-id和R.java的内部结构,或者至少可以引用我来阅读更多关于它的内容?
resource-id的含义是什么?他们是apk中的某种地址吗?他们在编译的apk中保存在哪里?
我尝试了一些关于它的信息,但我得到的大部分内容都是导入它的问题以及它的作用和一般情况.