私はRelativeLayoutを拡張するカスタムビューを作成する必要があり、このcustomViewと同じサイズのimageViewが必要です。
私のコードは次のとおりです。
public class MyCustomButton extends RelativeLayout {
ImageView buttonCoverImage;
public MyCustomButton(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public MyCustomButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyCustomButton(Context context) {
super(context);
setClickable(true);
setFocusable(true);
setEnabled(true);
buttonCoverImage = new ImageView(getContext());
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
setLayoutParams(lp);
lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
buttonCoverImage.setLayoutParams(new RelativeLayout.LayoutParams(100, 100));
buttonCoverImage.setBackgroundResource(R.drawable.button_selector);
buttonCoverImage.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
performClick();
}
});
this.addView(buttonCoverImage);
}
}
そしてxmlで、私はこのビューを次のように作成しました:
問題は、buttonCoverImageが表示されないことです。どういうわけか、作成されていないか、myCustomViewに追加されていません...問題は何でしょうか?