제 코드에서는 radioButtons, checkboxes 등과 같은 입력 요소를 프로그래밍 방식으로 내 레이아웃에 추가합니다. 문제는 해당 요소의 스타일이 xml을 통해 radioButton을 추가한다고 가정 할 때 기본 스타일이 아니라는 것입니다. (흰색 애플리케이션 백그라운드에서 실제로 흰색이고 거의 투명하게 보입니다. 마치 투명 한 것처럼 보입니다.) 또한 내가 추가하는 EditText 요소는 동일한 스타일을 가지며 입력 한 내용이 너무 크면 텍스트 줄을 조금 겹치게합니다. 그래서 저는 XML을 통해 정의 된 것처럼 보이는 것처럼 모든 요소에 기본 스타일을 부여하는 것으로 생각합니다.프로그래밍 방식으로 추가 된 스타일 설정하기
내 코드의 샘플은 다음과 같습니다
이RadioGroup radioGroup = new RadioGroup(mContext);
radioGroup.setLayoutParams(fullWidthWrapHeight);
for (int i = 0; i < arg0.getOptions().size(); i++){
RadioButton radioButton = new RadioButton(mContext, null);
radioButton.setPadding(padding16dp , padding8dp, padding16dp, padding8dp);
radioButton.setText(arg0.getOptions().get(i).getText());
radioButton.setLayoutParams(wrapBoth);
radioButton.setGravity(Gravity.CENTER_HORIZONTAL);
radioButton.setTextAppearance(mContext, R.style.Default_Text);
radioGroup.addView(radioButton);
}
내 목표 API의 LVL은 21 당신은 View
생성자의 인수로 styles.xml
내부에 정의 된 스타일을 전달할 수 있습니다
기본 radioButton 스타일을 전달하는 것이 가능하거나 기본 스타일을 부모로 갖는 새 스타일을 만들어야합니까? – Cuddl3s
당신은'@android : style/Widget.CompoundButton.RadioButton'을 부모로 갖는'YourRadioButtonStyle'을 정의해야하고 –
이'com을 사용할 수 있어야하는 기본 radioButton 스타일을 전달하는 방식으로 일부 필드를 설정해야합니다. 'R.attr.radioButtonStyle' 대신에 android.internal.R.attr.radioButtonStyle'을 입력하십시오. –