- strings.xml 파일은 언어만 따로 처리하면, 다국어 처리가 쉽기 때문에 파일 하나로 관리해준다.
- 코드에 값을 바로 입력하는 하드코딩도 하지 않기 때문에 변수값도 strings.xml 파일에 저장해서 활용할 수 있다.
사용하기
<resources>
<string name="app_name">QuizApp</string>
<string name="q1">A honey bee can fly at 15mph.</string>
<string name="q2">A jellyfish is approximately 95% water.!</string>
<string name="q3">Elephants are the only mammals that can\'t jump</string>
<string name="q4">Cats can hear ultrasound.</string>
<string name="q5">A human brain weighs about three pounds.</string>
<string name="q6">The tongue is the fastest healing part of the body.</string>
<string name="q7">Americans, on average, eat 18 acres of \"pizza\" a day.</string>
<string name="q8">A kangaroo can jump 30 feet.</string>
<string name="q9">A pigeon\'s feathers are heavier than its bones.</string>
<string name="q10">The tallest man was 8 ft. 11 in.</string>
</resources>
사용할 데이터들을 <string>태그에 담고 속성 name="변수명"으로 작성(복붙) 한다.
// Quiz 클래스
public class Quiz {
public int question;
public boolean answer;
public Quiz(int question, boolean answer){
this.question = question;
this.answer = answer;
}
}
// Quiz 타입 ArrayList 객체 생성
ArrayList<Quiz> quizArrayList = new ArrayList<>();
// 생성자
Quiz q = new Quiz(R.string.q1,true);
quizArrayList.add(q);
strings.xml에 태그의 속성 name 값에 넣은 변수 사용 = R.string.q1
위 코드 생성자부분을 보면, 첫번째 인자의 타입은 int인데 R.string.q1이 들어갔다.
이유는 strings.xml 파일 <string>태그의 속성 name의 값인 변수 q1은 컴파일하는 과정에서 int 타입으로 변하기 때문.
'Android Studio' 카테고리의 다른 글
[Android Studio] NullPointerException 에러 발생하는 이유 (1) | 2023.12.22 |
---|---|
[Android Studio] CountDownTimer 사용 방법 (0) | 2023.12.22 |
[Android Studio] IndexOutOfBounds Exception 에러 (1) | 2023.12.22 |
[Android Studio] ProgressBar 사용법 (0) | 2023.12.22 |
[Android Studio] AlertDialog 사용하기 (0) | 2023.12.22 |