*

【android】設定画面の作成

公開日: : 最終更新日:2012/04/30 android

res/xml/preferences.xml

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
  xmlns:android="http://schemas.android.com/apk/res/android">
    <PreferenceCategory>

        <!-- チェックボックス -->
        <CheckBoxPreference
        	android:key="@string/prefkey_dispOnStatusBar"
        	android:title="@string/pref_boot_statusbar_title"
        	android:summary="@string/pref_boot_statusbar_summary"
        	android:defaultValue="true"
        	 />

        <!-- リスト -->
        <ListPreference
            android:key="@string/prefkey_searchbarPosition"
        	android:title="@string/pref_searchbar_position_title"
        	android:summary="@string/pref_searchbar_position_summary"
            android:dialogTitle="@string/pref_searchbar_position_title"
            android:entries="@array/pref_searchbar_position_entries"
            android:entryValues="@array/pref_searchbar_position_values"
        	android:defaultValue="1"
             />
    </PreferenceCategory>
    
</PreferenceScreen>

PreferenceActivity.java

public class MyPreferenceActivity extends PreferenceActivity{
	SharedPreferences sp;

	@Override
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		this.addPreferencesFromResource(R.xml.preferences);
		
		sp = PreferenceManager.getDefaultSharedPreferences(this);
		
		initList( R.string.prefkey_searchbarPosition );
	}

	//リストの値をサマリーに表示する
	private void initList(int resourceIdOfpreferenceKey){
		final ListPreference list = (ListPreference)findPreference(
				getResources().getString(resourceIdOfpreferenceKey)
				);
		
		//保存済みの設定をサマリーに表示
		list.setSummary(list.getValue());

		//設定が変更された値をサマリーに表示する
		list.setOnPreferenceChangeListener(new OnPreferenceChangeListener(){
			public boolean onPreferenceChange(Preference preference, Object newValue) {
				
				list.setSummary( String.valueOf(newValue) );
				return false;
			}
		});

	}

	@Override
	public void onPause(){
		super.onPause();
		//設定を反映
		}
	}
}// end of class

関連記事

no image

【android】リソースからいろいろ取得する

リソースで定義したいろいろをコード内で呼び出す方法です。 レイアウト //リソースからレ

記事を読む

no image

【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサイクルは複雑で困ります。 G

記事を読む

no image

【android】非同期処理

Androidで非同期処理、マルチスレッドを処理するスニペット。 AndroidのスレッドはUIス

記事を読む

no image

【android】ハードウェアキー入力を検出する

Activityを継承したクラスで下記を記述します。 public boolean

記事を読む

no image

【android】 年月だけのDatePicker

final DatePicker datePicker = new DatePicker(sel

記事を読む

no image

【android】ホーム画面や他のアプリの前面にViewを表示する。

WindowManagerのTYPE_SYSTEM_ALERTのレイヤーにViewを表示することで、

記事を読む

no image

インテント

基本 //任意のアクティビティの起動 Intent intent = new

記事を読む

no image

【android】 webviewでassetsのリソースを使用する

webviewでassets内のリソースにアクセスするには file:///android_a

記事を読む

no image

【android】アプリ内課金を実装する

アプリ内課金のサンプルコードを解析します。 参考URL 公式API Android

記事を読む

no image

【android】DrawableとBitmap、リソースの相互変換 

Resource → Bitmap Bitmap bm = BitmapFactory.dec

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

no image
知らないと損をする6つのライセンスまとめ

オープンソースやフリーウェア、フリー素材などが巷に溢れ、それらを利用す

no image
ガリレオ:ニュースブラウザをリリースしました。

概要 ガリレオはニュースを読んだり、検索する機能に特化したブラウザア

no image
【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサ

→もっと見る

PAGE TOP ↑