2017-09-12 13 views
-1

this 스레드에 따르면 리소스를 만들려면 처음으로 @+id/을 사용해야합니다.Android : "@ + id /"및 "@ + id /"

그러나이 리소스가 이전에 생성 된 것을 잊어 버렸고 @+id/으로 다시 생성하면 어떻게됩니까? 일부 입력이 있고 아직 선언되지 않은 요소에 대해 nextFocusDown을 설정합니다. 나는 이미 선언 된 것 잊었다 때문에 아래

<EditText 
... 
android:nextFocusDown="@+id/myinput2"/> 

200 선은 @+id와 함께이 요소를 만들 수 있습니다.

<EditText 
... 
android:id="@+id/myinput2"/> 

이 기능은 작동하지만 문제가 발생할 수 있습니까?

답변

1

빠른 정의 :

  • @+id/foo
  • @id/foo를 오류의 경우가 될 것이다 ("아이디 foo을 사용하여"의미 "존재하지 않는 경우를 ID foo를 사용하여 작성"을 의미 아이디 foo

이전에, (당신이 참조하려고하면 시스템이 말할 수 @+id을 통해 @id을 선호하는 이유가 있었다) 존재하지 않습니다 존재하지 않는 아이디)를 통해 볼 수 있지만 이제 시스템도 android:layout_below="@+id/idthatdoesntexistanywhere"를 작성하는 것은 오류로 태그됩니다 똑똑 :

enter image description here

그래서 그냥 항상 @+id을 사용합니다.

1

It works like this but can it cause an issue?

아니요. 항상 @+id/을 사용하십시오. 지금까지 안드로이드 빌드 환경은 알아낼 수있을만큼 똑똑합니다.

0

동일한 id의 두 요소를 동일한 layout 파일에 넣으면 IDE 오류 (빨간색 밑줄)가 나타나고 컴파일 할 수 없습니다.