我对这段代码不太确定,但是我尝试着这样做:
ImageButton stuff = (ImageButton) createView.findViewById(R.id.stuff);
int stuff2 = stuff.getId();
champs.setImageResource(stuff2);
但是这并没有起作用,ImageButton因某种原因被缩小了,图片消失了,只剩下一个灰色的矩形。
我对这段代码不太确定,但是我尝试着这样做:
ImageButton stuff = (ImageButton) createView.findViewById(R.id.stuff);
int stuff2 = stuff.getId();
champs.setImageResource(stuff2);
但是这并没有起作用,ImageButton因某种原因被缩小了,图片消失了,只剩下一个灰色的矩形。
试一试
Bitmap bitmap = ((BitmapDrawable)stuff.getDrawable()).getBitmap();
android.graphics.drawable.TransitionDrawable无法转换为android.graphics.drawable.BitmapDrawable
。 - zihadrizkyefstuff.getId();
id
而不是与其相关联的图像资源。因此,您将没有与此相关的资源,这就是为什么您看不到Image
的原因。setImageResource
,例如:R.drawable.drawable_id
。您需要设置可绘制资源的ID,但您正在将ImageButton
的ID
设置为图像资源。
这里stuff.getId()
返回R.id.stuff
。
请设置有效的可绘制资源,例如:
ImageButton stuff = (ImageButton) createView.findViewById(R.id.stuff);
stuff.setImageResource(R.drawable.id_of_image);
试试这个
ImageButton stuff = (ImageButton) createView.findViewById(R.id.stuff);
Drawable d = stuff .getBackground();
champs.setBackgroundDrawable(d);
这将有助于获取可绘制对象并设置可绘制对象。您还可以获取图像可绘制的位图对象。这将设置与imagebutton关联的确切可绘制对象。
ImageButton mButton = new ImageButton(this);
Drawable drawable = mButton.getBackground();
champs.setImageDrawable(drawable)