基礎からやさしく学べるブログだよ☆2015年6月11日木曜日ぼくのインデントインデントは無ではないみんなで1つのファイルを編集していると、インデントで殴り合いになることがある。TAB派とSPACE派だ。多くのエディタではデフォルトでTABもSPACEも表示しない。そのためこのような悲しい戦いが繰り返される。私はこの憎しみの連鎖に終止符を打ちたい。起床時に3回唱えよう。実機で開いている画面からActivityのクラスを特定する裏ワザ裏ワザではないソースが見れるでっかいアプリを試しに動かしている時に、この画面はどのActivityクラスなんじゃ?と思うことがある。入れ歯型の歯ブラシがあったらガシガシ噛むだけで歯が磨けるんじゃね?とちょうど同じくらいの頻度で思う。裏ワザ紹介!!!!1そんなときはUSBでAndroid端末とPCをつなぎ、以下のコマンドを実行する。Activityのスタックが表示される。grepが使えないWindowsなキミはおとなしくfindstrでもつかってな。共有レイアウトはどこからやってくるかレイアウトの旅レイアウトをどこで設定して、どこで読み取って、どこでインスタンス化しているのかの話。Inflateインフレ・デフレという言葉が示すように、Inflateとはなにかをでっかくすることだ。AndroidでInflateといえば、レイアウトデータをレイアウトインスタンスにふくらませることだ。レイアウトデータレイアウトデータはxmlだ。/></<LinearLayout>こんなかんじ。それをGorillaProject/res/layout/my_cool_layout.xmlのような場所にいい感じの名前で格納する。LinearLayoutのインスタンスが格納される。LinearLayoutのインスタンスだ。inflateでは、xmlファイルという指示書に従って、Viewのインスタンスをnewしていくというわけだ。InflateなんてないじゃんあるActivityでは、こんなふうに書かれている。setContentView(R.layout.my_cool_layout);}こういうときはsetContentViewのなかでInflate処理しているんだよ。Inflateを内部的に呼び出している関数はたくさんあるよ。アプリをつくろうぜってなっても、なにから考えればいいかわからんね。AndroidのBluetoothの扱いに興味を持つ人がいてもいいんだろうけどそういう人はこことか読まない。目に見えるものを考えるよね。Activityいわゆる画面。1つの画面が1つのActivityだ。こいつのなかにモノをつっこむことで、アプリはできあがるのだ。Fragment昔はなかったんだけど、いまは必須なやつ。Activityの中を小分けにするやつ。弁当箱で言うと「ばらん」で分けられた区域のこと。注意しないといけないのは、こいつは非表示にしたり切り替えたりできるってこと。おかず区域の「からあげ」をタップすると、ご飯区域の「白米」が「チャーハン」になる感じな。Activityのなかに直に置くこともできるし、Fragmentの中に置くこともできる。「からあげ」や「白米」や「チャーハン」のこと。Viewは入れ子にできるものがある。これは「からあげおにぎり:だ。白米の中にからあげを入れることができる。からあげのなかに白米をいれることはできないように、入れ子に出来ないViewもある。実体があるのがViewだ。それらの入れ物がActivityとFragmentだ。FragmentはActivityの中に置くことができる。レイアウトヒエラルキーだね。