Androidちんたら開発室 -7ページ目

2010/12/14の日報

ようやくまともな仕事が回ってきた

といっても部門再編を見越しての予備調査みたいなもんだが

やっぱり仕事があるのはいいっすわ


Android開発は徐々に家での作業にシフトしていきたい

widgetの作り方

以下はウィジェットの実装方法のメモ

とりあえずはガワだけ(アイコンのように表示されるだけ)のウィジェットについて


0.雛形作成
 いつものようにAndroidプロジェクト作成
 空のウィジェット(押しても処理が無い)ならActivityは作らなくてもいい



1.ウィジェット用xmlファイルを作成

 xmlフォルダをres以下に作成
 フォルダ内に適当な名前のxmlファイルを『リソースの種類:AppWidget Provider』で作成する
 雛形に以下を設定
 ここではtestwidget.resとする


<?xml version="1.0" encoding="UTF-8"?>
<appwidget-provider
xmlns:android="http://schemas.android.com/apk/res/android "
android:minWidth="72dip"
android:minHeight="72dip"
android:initialLayout="@layout/main"
android:updatePeriodMillis="0"
/>


 WidthとHeightはウィジェットのサイズ
 dipとは画面上でのウィジェットサイズを指定する単位
 画面を4×4で分割したセル座標系において

  dip=(セル数×74dip)-2dip

 らしい
 だから2x2ウィジェットではそれぞれ146dipになる


 initalLayoutはウィジェットの初期レイアウト
 ここではmail.xmlとした

 updatePeriodMillisは更新頻度(msec)→0は更新しない



2.ウィジェットクラスを作成

 src/以下に適当な名前のクラスを作成(.javaファイル)
 AppWidgetProviderを継承する
 ウィジェットを配置するだけなら処理をオーバーライドしなくても動作する


 import android.appwidget.AppWidgetProvider;
 public class TestWidgetProvider extends AppWidgetProvider { }



3.マニフェストファイルを変更
 AndroidManifest.xmlにウィジェットを登録する
 <application>の中に以下を追加


<receiver android:name=".TestWidgetProvider"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/testwidget" />
</receiver>



4.実行
 アクティビティを作成しなかった場合は、実行しても何もおこらない(当然だが)
 ホームスクリーンを長押し→ウィジェットを選択すると
 ウィジェットリストの中に作ったウィジェットが追加されていることが分かる
 今回作った空のウィジェットは、1x1の中にlayout.xmlの内容が書かれたもの
 デフォルトならHellow~のハズ



注:

 (※実機デバッグなどでは、長押し→ウィジェット選択からウィジェットのリストが表示されるまで時間がかかる模様/待つべし)

2010/12/13の日報

職場で大掃除があったのだが、すでに隅々までピカピカだったので30分で終わってしまった

なぜみんな手持ち無沙汰になると、席の掃除を始めてしまうんだろう



あいかわらずReaderを弄ってる

今はChainLP青空文庫 をePub変換してどんどんストックしてる

たぶん青空文庫の半七捕物長だけであと三ヶ月くらいもつわ


あと保証は無いものの、ReaderStore以外の著作権保護付きxmdfファイルもReader再生できるらしい

問題は他の販売サイトもアレな品揃えなこと(サイトの作りはReaderStoreよりずっといいが)

そのうち試しに買ってみたい



Androidの勉強は開店休業中だ

Readerに入れるスキャン対象の書籍や、スクラップを探していたら

ついつい読みふけってしまった

本棚漁ってみると、積んである本とか内容が重複している本が凄く多い

無駄だな

本だけ買って安心する癖を直したい



とりあえずReaderはここまで

Android開発にもどりたい