2014-06-12 6 views
2

나는 enum 값을 만드는 방법 | 그들

<attr name="ff_type" format="enum"> 
      <enum name="small" value="1" /> 
      <enum name="big" value="32" /> 
      <enum name="medium" value="8288" /> 

     </attr> 

방법 app:ff_type="small|medium"을 수행 할 사용자 정의보기 내 XML에서 허용 거기에 열거이있는 안드로이드 사용자 지정보기 를 선언? 오히려 enum보다

답변

1

사용 flag :

<attr name="ff_type" format="flag"> 
    <flag name="small" value="1" /> 
    <flag name="big" value="32" /> 
    <flag name="medium" value="8288" /> 
</attr> 

format="flag"의 포함은 선택 사항입니다.

8288은 이상한 선택입니다. 2의 능력을 이용하는 것이 좋습니다. 그대로 서면 8288 = 32 * 259. 따라서 big을 암시하지 않고 medium을 선택할 수 없습니다.

<attr name="ff_type"> 
    <flag name="small" value="1" /> 
    <flag name="medium" value="2" /> 
    <flag name="big" value="4" /> 
    <flag name="smallerThanBig" value="3" /> 
</attr> 

그래서 여기 smallerThanBigsmall|medium과 동일하다 (하지만 당신은 모두 사용할 수 있습니다) :

<attr name="ff_type"> 
    <flag name="small" value="1" /> 
    <flag name="medium" value="2" /> 
    <flag name="big" value="4" /> 
</attr> 

은 그럼 당신은 선택적으로 바로 가기로 추가 값을 추가 할 수 있습니다.

+0

format = flag 대신 format = integer를 넣어야합니다.

+0

" 비트 또는 값 사이에 isnt? 그럼 뭐야? – weston

+0

나는 '형식'을 선택하지 않고 '정수'를 선택하는 것이 도움이되는지 확인합니다. – weston