Androidプログラムの基本から

by K.I
2014/09/19〜

Index


概要


[top]

アプリケーション起動時の動作

Activity

AndroidManifest.xml

参考: IntentFilterにDEFAULT_CATEGORYが必要な理由 →よく理解していないが、とりあえずメモ

Hello Android!

デフォルトのLayout?

Activityの追加と遷移

遷移先からの戻り方

引数を渡して遷移

遷移先からデータを返す


1この例では、hm.orz.bluefish.helloandroidというパッケージを作って、その中に入れてやる必要がある。
2packageの記述は、パッケージを作ると自動的に追加されるようだ。
3Activityの名前は、大文字小文字含めて正しく指定しないと実行時に落ちる。

[top]

Layout

Layoutリソースの追加

ActivityにLayoutをセット

LayoutのWarning

文字列の定義

リソースの参照

ボタンの動作記述

→ボタンを押すと、しばらくの間、挨拶が表示される
4Eclipseは、よく分からないことが多い。。

[top]

ListView

セルのレイアウト

ListViewのレイアウト

ListViewにデータをセット

ListViewのクリック動作記述


5wrap_contentだと、一度仮想的に描画してサイズを確認したあと、改めて描画するというような操作をしているらしい。

[top]

ListViewのカスタマイズ

アニメーションのXML

Adapterのカスタマイズ

getViewについて

カスタムAdapterを使ってみる


6ListViewのカスタマイズということだけなら、このファイルは特に要らないけど。
7なんかシステムでやっても良い様なことまで、やらされてるんじゃないかなって気がする。

[top]

Holderを使わないListView

Layoutクラスのカスタマイズ

CustomLayoutクラスを使う

Holderを使わないカスタムAdapter

Holderを使わないListViewを使う


[top]

OverScrollListView

ListViewのカスタマイズ

OverScroll用のLayout

カスタムListViewを使う


[top]

グラフィックス

View

Viewに描画

View Group

カスタムのViewクラスの作成

カスタムViewクラスを使ってみる


8これって、けっこう凄いことだよね。

[top]

アクションバー

Optionメニュー

menuリソースで

表示方法
ifRoom Barに表示できない場合は、Overflowメニューに表示
withText Textを表示
never 常にOverflawメニューに表示する
always 常にBar上に表示
collapseActionView android:actionViewLayoutで指定したActionViewと関連付ける

Optionメニュー選択時の処理

Optionメニューの無効化

onPrepareOptionsMenuが呼ばれない

参考: stackOverflow

サブメニューにアイコンを付ける

Spinnerのリソース

Spinnerを使う


9もしかすると、Theme使ってる所為かもしれないけど。
10MacとかWindowsでは、Menuは動的に変化することが前提なので、メニュー準備のイベントは必ず呼ばれるけど、Androidは何でこうなってるんだろう。。

[top]

Mouseの動きで描画

ViewにMouseで描画

プログラムによるレイアウト

LayoutInflaterを使う

LayoutInflaterについて


[top]

オフスクリーン

オフスクリーンの生成

Bitmap.config 1ピクセルあたりの、byte数/定義内容
ARGB_8888 4byte/αチャネル(8bit)、R(8bit)、G(8bit)、B(8bit)
ARGB_4444 2byte/αチャネル(4bit)、R(4bit)、G(4bit)、B(4bit)
RGB_565 2byte/αチャネルなし、R(5bit)、G(6bit)、B(5bit)
ALPHA_8 1byte/αチャネル(8bit)のみ

オフスクリーンを使った描画

オフスクリーンを使ったCanvas

Viewのメソッド呼び出し

Viewの保存


[top]

まとめ


11XMLって、冗長な感じがして、どうもあまり好きじゃない。

[top]

エラーメッセージ

Error parsing XML: not well-formed (invalid token)


12一度、このエラーが出ると、Eclipseの状態が少しおかしくなるのかもしれない。

[top]

参考


[top] [プログラムの部屋に戻る]

comments powered by Disqus