2014-06-05 2 views
0

@string & @ + id는 무엇을 의미합니까?@string & @ + id는 무엇을 의미합니까?

왜 우리는 아래의 false_button 대신 String ("False")을 사용할 수 없습니까?

<Button 
     android:id="@+id/false_button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/false_button" /> 

감사합니다.

+1

오래된 답 : http://stackoverflow.com/questions/5025910/difference-between-id-and-id-in-android – Superlandero

+0

http://developer.android.com/guide/topics/resources /accessing-resources.html – ILovemyPoncho

답변

1

문자열을 직접 사용할 수 있습니다.

android:text="False" 

@string는 파라미터 이름 false_button와 strings.xml의 파일에 저장되어있는 값을 의미한다. 다중 언어 앱의 경우이를 수행하는 것이 더 좋습니다. 그러면 각 언어에 대해 여러 개의 XML 파일을 가질 수 있으므로 "거짓"으로 하드 코딩해야합니다.

@+id에 대해서는 id 조회에 매개 변수 이름 false_button의 ID를 생성하는 것을 의미합니다. 이미 할당 된 ID 조회에서 가져온 @id과 반대입니다. @+id은 훨씬 더 빠르고 더 빠르고 읽기 쉽습니다.

+1

또한 문자열 파일을 사용하면 값을 쉽게 변경할 수 있습니다. 따라서 "False"를 사방에 쓰고 "True"로 변경하려면 하드 코딩하는 경우 사방을 변경해야합니다. strings.xml을 사용하는 경우 한 자리에서 해당 값을 변경하면됩니다. – codeMagic

관련 문제