ウィジェットの設定ファイルは「res/xml」ディレクトリに作成しますが、Andorid Studio自動作成することができます。
<サンプル>
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialKeyguardLayout="@layout/new_app_widget"
android:initialLayout="@layout/new_app_widget"
android:minHeight="80dp"
android:minWidth="80dp"
android:previewImage="@drawable/example_appwidget_preview"
android:resizeMode="none"
android:updatePeriodMillis="86400000"
android:widgetCategory="home_screen">
</appwidget-provider>
<解説>
①基本タグ。これは変更する必要はありません。
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
②ロック画面用のレイアウト設定ファイルを指定している。
android:initialKeyguardLayout="@layout/new_app_widget"
③基本のレイアウト設定ファイルを指定している。
android:initialLayout="@layout/new_app_widget"
④最小サイズの指定。縦と横にそれぞれ「80dp」を指定しているので「1ブロック×1ブロック」サイズになります。
android:minHeight="80dp"
android:minWidth="80dp"
<大きさ>
"80dp"・・・1ブロックサイズ
"110dp"・・・2ブロックサイズ
"180dp"・・・3ブロックサイズ
"250dp"・・・4ブロックサイズ
⑤ウィジェット一覧に表示するプレビュー画像を指定している。
android:previewImage="@drawable/example_appwidget_preview"
⑥ウィジェットサイズの変更についての設定。
android:resizeMode="none"
"none"・・・縦と横どちらもサイズの変更ができない。
"horizontal"・・・横サイズ変更のみ可能。
"vertical"・・・経てサイズ変更のみ可能。
"horizontal|vertical"・・・縦と横のサイズ変更が可能。
⑦ウィジェットの更新時間(ミリ秒)を指定している。サンプルの場合は24時間で更新。
android:updatePeriodMillis="86400000"
※最短更新時間は30分(1800000ミリ秒)になっているため、"1800000"以下を指定しても実際は30分(1800000ミリ秒)更新となる。
⑧このウィジェット設定のカテゴリーを指定している。サンプルの場合は「ホームスクリーン」になる。
android:widgetCategory="home_screen">
"keyguard"・・・ロック画面
"home_screen"・・・ホームスクリーン
"keyguard|home_screen"・・・ロック画面とホームスクリーンの両方を兼ねる。
END