0
我有一個繼承自RelativeLayout
的自定義類。我有一個名爲control_btn
的ImageButton
,它被定義並添加到init()
方法的佈局中。在onDraw
,我有以下代碼(除其他事項外):ImageView setImageResource不起作用
control_btn.setImageResource(R.drawable.play_new);
control_btn.getLayoutParams().width = getPixels(20);
control_btn.getLayoutParams().height = getPixels(20);
control_btn.setX(getPixels(0));
control_btn.setY(getPixels(10));
control_btn.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
control_btn.setAdjustViewBounds(true);
control_btn.setPadding(0, 0, 0, 0);
control_btn.setBackgroundColor(Color.TRANSPARENT);
control_btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
control_btn.setImageResource(R.drawable.pause);
Log.d("WTH", "clicked");
}
});
然而,圖像不會改變,儘管獲得日誌條目。 此外,我有另一個ImageButton
具有完全相同的代碼,其圖像會改變(也在自定義類中)。
有關如何解決此問題的任何想法?
嘗試將setImageResource放入init()方法 – rainash
先生,您是一位天才。我以爲因爲我只是在改變一個視圖,所以onDraw不會被調用。請說這是一個答案,所以我可以標記它是正確的,並感謝一噸。 –