Android의 R 클래스 이해
이 질문에 이미 답변이 있습니다.
안드로이드에서는 R
수업을 잘 이해하고 있는지 잘 모르겠습니다 . 스도쿠 예제를 살펴보면 다음 코드 스 니펫이 있습니다.
switch (v.getId()) // the id of the argument passed is evaluated by switch statement
{
case R.id.about_button: //
Intent i = new Intent(this, about.class);
startActivity(i);
break;
// More buttons go here (if any) ...
}
저는 Java를 처음 접했지만 제가 수집 한 내용은 입력 (버튼에 터치 스크린이 터치 됨)을 받고 인수를 평가하는 것처럼 보입니다. 그런 다음 about 버튼이 인식되면 case 문이 설정되고 새 인터페이스 화면이 생성 된 다음 전화기에서 탐색됩니다.
이게 옳은 거니?
내가 그 요점을 맞았다면 왜 "R"클래스와 거래하는 것입니까?
버튼의 ID를 인식하기 위해 호출되는 이유는 무엇입니까?
이 프로젝트에서 슈퍼 클래스는 SudokuActivity 클래스라고 생각했습니다.
R.java
Android 앱의 Java 클래스에서 사용하기 위해 모든 자산 (문자열, Android 위젯, 레이아웃)을 동적으로 식별하기 위해 빌드 프로세스 중에 생성되는 동적으로 생성 된 클래스입니다. 이것은 R.java
Android 전용이므로 (다른 플랫폼에 대해 복제 할 수는 있지만 매우 편리합니다) Java 언어 구성과 관련이 많지 않습니다. 자세한 내용 은 여기 를 참조하십시오.
R
공용 상수 만 포함하는 클래스입니다. (공개 정적 결승).
res
파일에 정의한 다양한 값을 반영하는 생성 된 클래스 (Eclipse의 Android 플러그인에 의해)입니다 .
예를 들어 다음과 같은 것이 있어야합니다.
android:id="@+id/about_button"
프로젝트의 레이아웃 / 메뉴 xml 파일 중 하나의 어딘가에 작성하면 Eclipse는 R 파일에 상수를 생성합니다 (에서 찾을 수 있음 gen/PACKAGE/R.java
).
이에 대한 자세한 내용은 Android 개발자 의 리소스 가이드 를 참조하세요.
R
클래스는 코드를 컴파일하기 전에 리소스에서 Android 도구에 의해 생성됩니다. 여기에는 프로젝트에서 참조 할 수있는 각 리소스에 대해 할당 된 숫자 상수가 포함됩니다. 예를 들어, about_button
. 당신이하지 않은 경우 R
클래스를, 당신은 코드에서 참조하는 "about_button"문자열을 사용해야합니다. 이 문자열에 실수를하면 응용 프로그램을 실행할 때만 알게됩니다. 함께 R
하면 컴파일시 훨씬 이전 오류를 볼 수 있습니다.
R
내부 클래스를 통해 리소스를 참조 할 수있는 방식으로 구성됩니다. 예를 들어, R.id
id 상수를 R.layout
포함하고 레이아웃 상수를 포함합니다.
참고 URL : https://stackoverflow.com/questions/6804053/understand-the-r-class-in-android
'Programing' 카테고리의 다른 글
매핑 된 멤버를 제외한 모든 대상 멤버를 무시하는 방법은 무엇입니까? (0) | 2020.11.20 |
---|---|
delayed_jobs vs resque vs beanstalkd? (0) | 2020.11.20 |
여러 Git 커밋 (이미 푸시 됨)을 게시 된 저장소로 되돌리려면 어떻게해야합니까? (0) | 2020.11.20 |
postgresql에서 배열의 크기를 찾는 방법 (0) | 2020.11.20 |
생성기를 통해 반복하는 방법 (0) | 2020.11.20 |