スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

設定画面を作る

今回から、設定画面の作成を学んでいきます。

設定というのは簡単な情報が多く、プリファレンスによる保存に向いています。そしてAndroidでは、設定画面を作成するために Activityの派生クラスとして PreferenceActivityクラスを用意しています。

設定画面も、通常のActivityと同じく XMLファイルでレイアウトを決め、Javaファイルにロジックを記述することになります。

XMLファイルの基本構造は以下のようになります。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="@string/pref_title">

</PreferenceCategory>
</PreferenceScreen>


PreferenceCategoryの title は、設定画面のタイトルでアプリケーション名の下にやや小さく表示されます。

PreferenceCategoryの中に設定項目を記述していきます。設定可能な項目は4つです。

設定項目内容
CheckBoxPreferenceチェックボックス。二択の項目に向いています。
EditTextPreferenceタッチすると入力可能なダイアログが開きます。
ListPreferenceタッチすると選択可能なリストが開きます。
RingtonePreference着信音の設定が可能です。


今回は、CheckBoxPreferenceを表示してみます。

20111219_1
チェックが入っているときは「チェックボックス オン!」と表示され、…


20111219_2
チェックを外すと「チェックボックス オフ!」と表示されます。


<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/pref_title">
<CheckBoxPreference
android:key="@string/check_key"
android:defaultValue="true"
android:title="@string/check_title"
android:summaryOn="@string/check_on"
android:summaryOff="@string/check_off"
></CheckBoxPreference>
</PreferenceCategory>
</PreferenceScreen>


レイアウトファイルでは、PreferenceCategoryの中にCheckBoxPreferenceを入れました。

key がプリファレンスのキーとなり、値はtrueかfalseのいずれかです。今回は defaultValueであらかじめtrueをセットしています。

titleは項目名で、summaryOn/summaryOff はチェックされた場合/外した場合でタイトル下の説明文を切り替えられます。


<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">HelloAndroid</string>
<string name="hello">HelloAndroid</string>
<string name="pref_title">HelloPreference</string>
<string name="check_key">Checkbox Key</string>
<string name="check_title">チェックボックスのテストです</string>
<string name="check_on">チェックボックス オン!</string>
<string name="check_off">チェックボックス オフ!</string>
</resources>



package sample.basic;

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

public class HelloAndroid extends PreferenceActivity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.layout.main);
}
}


Javaファイルでは、いつもはActivityを継承するところが、PreferenceActivityを継承します。

onCreate()メソッドでは、スーパークラスのメソッドを実行した後 addPreferencesFromResource()メソッドを実行します。

public void addPreferencesFromResource (int preferencesResId)

引数は setContentView()メソッドと同じくリソースIDになります。

プリファレンスファイルには、
<boolean name="Checkbox Key" value="true" />

という一行が追加されているはずです。


関連記事
スポンサーサイト

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://androidhacker.blog94.fc2.com/tb.php/91-d0374072
  • 閉じるボタン
レファレンス
月別アーカイブ
リンク
カテゴリ
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。