2011-08-18 3 views
0

나는이 문제에 대한 적절한 해결책을 찾기 위해 뛰어 들었지만 찾을 수는 없다. 대답은 불가능할 수도 있지만 유사한 질문이 많이 제기되었지만 한 번 더 시도하겠습니다.런타임시보기 스타일 지정 도움말.

나는 사용자 정의 스타일을 원한다는 견해를 가지고 있습니다 (그것은 등급 막대기 일 수 있지만 단추 또는 TextView 또는 ImageView 일 수 있습니다). 뭔가에 따라, 나는 그것을 (예를 들어) 레드 스타, 블루 스타 또는 오렌지 스타를 사용하고 싶습니다. 이 목록을 사용자 지정 목록 어댑터와 함께 목록에서 사용하여 기본 목록 데이터의 일부 특성을 기반으로 항목 목록보기에 Red-Star RatingBar 또는 Blue-Star RatingBar 또는 OrangeStar가 표시됩니다. RatingBar.

나는 원하는 색상 별을 반영하는 올바른 드로어 블을 선택하여 코드에서 스타일을 만든 다음 사용자 지정 ListAdapter에 적절한 스타일로 새 RatingBar를 만들게했습니다 (뷰의 스타일은 뷰가 생성 된 후에 변경됨), 그렇게하면 RatingBar가 나타나지 않습니다. 나는 이것이 예상되는지, 또는 내가 다른 뭔가 잘못되었을 지 확신하지 못한다.

내 이미지 선택기의 선택기를 원하거나 내가 이미 가지고있는 선택기의 다른 (사용자 지정?) 특성을 원하는 것 같습니다.

추가 속성이있는 RatingBar를 확장하는 CustomView를 만드는 경우 XML 정의 된 선택기가 해당 특성에 액세스하여이를 사용하여 다른 이미지를 선택할 수 있습니까?

내가 알아낼 수있는 유일한 대안은 ListAdapter에서 ListView를 사용하지 않는 것입니다. ListAdapter는 기본적으로 더 많은 사용자 지정 코드를 작성합니다.

생각하십니까?

답변

0

테마를 사용해 보았습니까? styles.xml에서 RatingBar의 테마를 정의 할 수 있습니다. 이 RatingBar 테마 내에서 drawable을 참조하는 android : progressDrawable을 정의 할 수 있습니다. 다른 드로어 블을 가리키는 여러 테마를 만듭니다. 이러한 다양한 테마를 사용하면 만드는 테마 (빨강, 파랑, 녹색)를 지원하도록 RatingBar Widget android : 스타일 속성을 프로그래밍 방식으로 설정할 수 있습니다.

+0

감사합니다. 나는 그것을 시도하고 그것이 어떻게되는지 보겠습니다. – aha

+0

테마가있는 행운? – icecreamman

+0

나는 그렇게 생각하지 않는다. 테마는 단일보기가 아닌 전체 활동에 적용됩니다. 그래서 나는 하나의 활동에 3 개의 등급 막대를 가질 수 없으며, 모두 다른 색을 사용합니다. 나는 완전히 포기하지 않았다. – aha