카테고리 없음

[안드로이드]새 PreferenceActivity 만들기

소혼 2011. 4. 11. 20:56
반응형
목차로 이동

인터넷 뒤져서 짜다보니 다시 짤때 자꾸 또 검색하네요.
머리에 담기 위해서라도 개인 블로그에 다시 정리합니다.

1. res/xml폴더아래 xml 파일을 생성합니다.
    xml 폴더가 없다면 xml 폴더를 만들고 그 아래 새로운 파일을 추가합니다.
    예를 들어 setting.xml 파일을 추가하고,  그 안에 아래 내용을 입력했습니다.

 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:key="root">
    <ListPreference
        android:key="WordSet"
        android:title="단어 종류"
        android:entryValues="@array/values_wordset"
        android:entries="@array/entries_wordset"
        android:defaultValue="0"/>
</PreferenceScreen> 

2. res/values 폴더 아래에 arrays.xml 폴더를 추가합니다.
   폴더에 아래 내용을 추가합니다.


<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="values_wordset">
<item>a</item>
<item>b</item>
</string-array>
<string-array name="entries_wordset">
<item>a</item>
<item>b</item>
</string-array>
</resources>

3. src 폴더에 새로운 class를 추가하고 아래 내용을 입력합니다.

package com.sohon.app;

import android.os.Bundle;
import android.preference.PreferenceActivity;

public class ActSettings extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.setting);
}
}

4. AndroidManifest.xml 파일의 application 태그 안에 아래 내용을 추가합니다.

<activity android:name=".ActSettings" android:label="@string/app_name"></activity> 

5. 적절한 클래스에 ActSetting을 호출하도록 코딩합니다.

Intent i = new Intent(this, ActSettings.class);
startActivity(i);
 
반응형