2012-12-26 2 views
3

View의 getId() 메소드와 XML 파일에 정의 된 ID의 상관 관계는 무엇입니까? 있어요? 내 ID는 다음과 같습니다. "field1", "field2"... 끝에있는 숫자는 내 응용 프로그램에 매우 중요하며이를 검색해야합니다. 그것을 할 방법이 있습니까?View 메소드 getId()는 무엇을 반환합니까?

답변

13

이란 무엇입니까가없는 경우 뷰 또는 NO_ID을 식별하는 데 사용되는 양의 정수 View의 getId() 메소드와 XML 파일에 정의 된 ID 사이의 상관 관계?

getId()android:id 값, 또는 setId()를 통해 설정 한 값을 반환합니다.

내 ID를 다음과 같이 : "필드 1의"XML에서 "FIELD2"

을, 그들은 @+id/field1@+id/field2처럼 보일 수 있습니다. 그것들은 ID 리소스를 할당하고 있습니다. ID 리소스는 컴파일 타임에 숫자로 변환됩니다. Java 코드에서 참조하는 숫자는 R.id.field1R.id.field2입니다.

끝에있는이 자릿수는 내 응용 프로그램에서 매우 중요하며이를 검색해야합니다. 그것을 할 방법이 있습니까?

R.id.field1에 ID를 비교하는 큰 switch 문 등 또는, getId() 값과 "매우 중요"숫자 사이에 매핑 할 HashMap를 설정 되세요. 또는 ID 값에 마법 이름이 포함되지 않은 다른 해결책을 찾으십시오.

1

View의 getId() 메소드와 XML 파일에 정의 된 ID의 상호 관계는 무엇입니까? 있어요? documentation에서

:

반환이 뷰의 식별자입니다.

관련 XML 속성

안드로이드 : ID

반환

보기가 더 ID

11

자원 ID 이름을 얻으려면 :

res.getResourceEntryName(view.getId()) 

당신이 내가 감사, 무엇을 찾고 있었다 정확하게 "필드 1"

+0

을 얻을 것이다! –

+0

여기서 res = 리소스 –

관련 문제