스위치 케이스에 사용 된 언어에 따라 스피너가 선택한 문자열

jordileft

나는이 Spinner내에서 Activity사용자가 선택할 수있는 항목이 "안녕하세요"와 "안녕". 장치가 스페인어 인 경우 이러한 항목은에서 string-es/대신 문자열이 선택되므로 "hola"및 "adios"가됩니다 string.

문제는 다음과 같은 코드에 많은 스위치 케이스가 있다는 것입니다.

switch(spinnerSelectedItem){
     case "hello":
     case "hola":
          //do something
          break;
     case "goodbye":
     case "adios":
          //do something else
          break;

}

문자열 리소스로 초기화 된 최종 문자열을 만들려고했지만 "상 수식 필요"라고 불평합니다.

final String resHello = getResources().getString(R.string.helloText);
final String resGoodbye = getResources().getString(R.string.goodbyeText);

switch(spinnerSelectedItem){
     case resHello :    
          //do something
          break;
     case resGoodbye :
          //do something else
          break;
}

이것은 단순화 된 버전입니다. 더 많은 항목과 두 개 이상의 언어가 있습니다.

한 가지 해결책은 값 대신 문자열 id를 사용하거나 switch 대신 if 절을 사용하는 것입니다.하지만 "스마트"또는 "깨끗한"방법을 찾고 싶습니다. 어떤 아이디어가 있습니까?

akash93

Resources getIdentifier 메소드를 사용 하여 문자열의 ID를 가져올 수 있습니다 . 예 : getResources().getIdentifier(resValue, "string", getPackageName())이것은 스위치 문에서 사용하고 비교할 수있는 id를 반환합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사용자 선택에 따라 스피너에서 TextView로 데이터 전달

분류에서Dev

사용자가 선택한 언어에 따라 mod_rewrite

분류에서Dev

bash를 사용한 Yaml : 문자열에서 따옴표 이스케이프

분류에서Dev

사용 가능한 공간에 따라 SwiftUI 텍스트보기 또는 문자열을 어떻게 선택할 수 있습니까?

분류에서Dev

하나의 숫자 범위가 다른 하나에서 선택한 값에 따라 달라지는 두 개의 j 스피너 연결

분류에서Dev

스위치 케이스에서 사용하기 위해 리소스 상수에서 문자열을 선언 할 수 있습니까?

분류에서Dev

사용자가 선택한 것에 따라 CSS 변경

분류에서Dev

다른 스피너에서 선택한 스피너의 항목에 따라 데이터를 표시합니까?

분류에서Dev

사용자 입력에 따라 스타일 설정 선언

분류에서Dev

사용자 입력에 따라 클래스 선언

분류에서Dev

스피너에서 선택한 항목은 드롭 다운의 위치가 아닌 문자열 배열의 항목 이름을 매핑해야합니다.

분류에서Dev

스피너에 대한 항목 배열을 선언 할 위치

분류에서Dev

Firefox에서 열린 선택된 웹 사이트의 암호화 된 텍스트 / 이상한 문자

분류에서Dev

콤보 박스에서 사용자 선택에 따라 양식 업데이트

분류에서Dev

콤보 박스에서 사용자 선택에 따라 양식 업데이트

분류에서Dev

Rails : 사용자 선택에 따라 데이터베이스 정보 표시

분류에서Dev

케이스에 따라 차별화 된 코드를 배열과 숫자에 적용

분류에서Dev

스위치 / 케이스에 저장된 변수 값 재사용

분류에서Dev

사용자가 선택한 필드에 따라 정렬 및 나열

분류에서Dev

계산에 사용할 스피너 선택의 숫자 값 가져 오기

분류에서Dev

값의 가중치에 따라 무작위로 열 인덱스 선택 (MATLAB)

분류에서Dev

preg_match 내부에 이스케이프 된 간단한 또는 큰 따옴표가있는 PHP 문자열

분류에서Dev

Applescript의 문자열은 시스템 언어에 따라 다릅니다. 범용 이름이 있습니까?

분류에서Dev

내 AppTheme 스타일 선택에 따라 사용자 지정 스타일 변경

분류에서Dev

사용자 선택에 따라 열에서 값 가져 오기

분류에서Dev

런타임에 스피너의 문자열 배열을 변경하는 방법 if 문에서 스피너의 선택된 항목을 사용하는 방법 (Eclipse의 Android)

분류에서Dev

스피너 선택에 따라 json 객체를 얻는 방법

분류에서Dev

이스케이프 된 큰 따옴표로 문자열에 바인딩

분류에서Dev

스피너가 선택한 항목의 문자열 값을 검색하려면 어떻게합니까?

Related 관련 기사

  1. 1

    사용자 선택에 따라 스피너에서 TextView로 데이터 전달

  2. 2

    사용자가 선택한 언어에 따라 mod_rewrite

  3. 3

    bash를 사용한 Yaml : 문자열에서 따옴표 이스케이프

  4. 4

    사용 가능한 공간에 따라 SwiftUI 텍스트보기 또는 문자열을 어떻게 선택할 수 있습니까?

  5. 5

    하나의 숫자 범위가 다른 하나에서 선택한 값에 따라 달라지는 두 개의 j 스피너 연결

  6. 6

    스위치 케이스에서 사용하기 위해 리소스 상수에서 문자열을 선언 할 수 있습니까?

  7. 7

    사용자가 선택한 것에 따라 CSS 변경

  8. 8

    다른 스피너에서 선택한 스피너의 항목에 따라 데이터를 표시합니까?

  9. 9

    사용자 입력에 따라 스타일 설정 선언

  10. 10

    사용자 입력에 따라 클래스 선언

  11. 11

    스피너에서 선택한 항목은 드롭 다운의 위치가 아닌 문자열 배열의 항목 이름을 매핑해야합니다.

  12. 12

    스피너에 대한 항목 배열을 선언 할 위치

  13. 13

    Firefox에서 열린 선택된 웹 사이트의 암호화 된 텍스트 / 이상한 문자

  14. 14

    콤보 박스에서 사용자 선택에 따라 양식 업데이트

  15. 15

    콤보 박스에서 사용자 선택에 따라 양식 업데이트

  16. 16

    Rails : 사용자 선택에 따라 데이터베이스 정보 표시

  17. 17

    케이스에 따라 차별화 된 코드를 배열과 숫자에 적용

  18. 18

    스위치 / 케이스에 저장된 변수 값 재사용

  19. 19

    사용자가 선택한 필드에 따라 정렬 및 나열

  20. 20

    계산에 사용할 스피너 선택의 숫자 값 가져 오기

  21. 21

    값의 가중치에 따라 무작위로 열 인덱스 선택 (MATLAB)

  22. 22

    preg_match 내부에 이스케이프 된 간단한 또는 큰 따옴표가있는 PHP 문자열

  23. 23

    Applescript의 문자열은 시스템 언어에 따라 다릅니다. 범용 이름이 있습니까?

  24. 24

    내 AppTheme 스타일 선택에 따라 사용자 지정 스타일 변경

  25. 25

    사용자 선택에 따라 열에서 값 가져 오기

  26. 26

    런타임에 스피너의 문자열 배열을 변경하는 방법 if 문에서 스피너의 선택된 항목을 사용하는 방법 (Eclipse의 Android)

  27. 27

    스피너 선택에 따라 json 객체를 얻는 방법

  28. 28

    이스케이프 된 큰 따옴표로 문자열에 바인딩

  29. 29

    스피너가 선택한 항목의 문자열 값을 검색하려면 어떻게합니까?

뜨겁다태그

보관