지금 당장 저는 Checkable을 구현하는 사용자 정의 ImageView를 사용하도록 설계된 수정 된 RadioGroup (수정 된 RadioGroup) 내에서 ImageViews 사이에 여백 공간을 추가하는 것만 큼 간단하게 처리하기 위해 애 쓰고 있습니다. onMesarue를 재정의하지 않았습니다.) 길고도 짧은 이야기,이 이미지는 고정 된 크기 (60x60dip)의, 그리고 그들이 (웹에서) 동적이기 때문에, 나는과 같이 동적으로 추가했다 :안드로이드 - ImageView 여백이 LinearLayout에 나타나지 않습니다.
이 for(int i = 0; i < num; i++){
ImageViewRadioButton childImage = new ImageViewRadioButton(mContext);
float imagehWidthHeight = getResources().getDimension(R.dimen.image_width_and_height);
LinearLayout.LayoutParams imageParams = new LinearLayout.LayoutParams((int) imageWidthHeight, (int) imageWidthHeight);
int imageSpacing = Utils.dipsToPixels(10, mContext);
int innerPadding = Utils.dipsToPixels(5, mContext);
imageParams.leftMargin = imageSpacing;
imageParams.rightMargin = imageSpacing;
childImage.setAdjustViewBounds(true);
childImage.setLayoutParams(imageParams);
childImage.setBackgroundDrawable(getResources().getDrawable(R.drawable.blue_pressed));
childImage.setPadding(innerPadding, innerPadding, innerPadding, innerPadding);
childImage.setClickable(true);
//other non-image properties...
imageContainer.addView(childImage);
}
작업을 수행하는 유일한 방법은있다 패딩 (padding). 그러나 각 어린이의 여백 사이에 여백이 보이지 않습니다 (여백). 이 일을 제대로하고 있습니까, 아니면 각 자녀의 마진을 고려하여 onMeasure를 무시하는 것보다 더 좋은 방법이 있습니까?
분명히 예입니다. 따라서 imageParams가 있어야합니다. LayoutParams 객체를 생성하여 뷰에 전달 했더니 여전히 작동하지 않았습니다. –