Android Studioで値を見るとデフォルトで10進数になるようだ。
切り替えるのが面倒なので、デフォルトを16進数にできないものかと思いつつ、今日も勉強中です。
AndroidやJavaのわからんことを書いているが、心優しき人々がコメントをくださる(全然関係ないけど、なんでサマリア人は「よき」がつくんだろう?)。
ありがたく読みながら、お勉強している。
さて、今回はFragment。
「NFC関係はFragmentに書いて、Activityのサイクルとは切り離している」とのコメントが。
名前は聞いたことがあるけど、そもそもFragmentが何かわかってないので、とりあえずそこだけ調べて、私が手を出せるものか考えよう。
ネットでFragmentを調べて、心惹かれるキーワードだけ書いてみよう。
やる気が出るかもしれない。
- タブレット端末とスマートフォン端末で表示を切り替えやすくなる
- 複数のFragmentを合成してActivityを作ることができる
- ロジックとUIを分けることができる
惹かれるような、そうでもないような・・・。
たぶん、「ボタン押す→何か動く」くらいのアプリしか作ってないからだろう。
ロジックっちゅうロジックは、全部ライブラリに突っ込んでるからなぁ。
わかりやすいスライドがあった。
あー、再利用かー。
あんまり画面作るの好きじゃないので、一度作ったら使い回せるとうれしいけど、そんなイメージかいな?
あるいは、あれこれ悩まず、とりあえずやってみたらわかるようなものか。
今作っているアプリで、唯一Fragmentが使われている画面がある。
PreferenceFragmentだ。
どっかのサイトに「PreferenceActivityじゃなくてPreferenceFragmentを使う場合」ってのがあったので、まねしてみたのだ。
短いので、貼ろう。
public class SettingsActivity extends Activity {
public static final String PREF_MASTER_KEY = "pref_master_key";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
getFragmentManager().beginTransaction().replace(android.R.id.content, new PlaceholderFragment()).commit();
}public static class PlaceholderFragment extends PreferenceFragment {@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preference_settings);}}}
関係するのはonCreate()の2行目と、static classなPlaceholderFragment。
Activityは、PreferenceActivityじゃなくて普通のActivity。
static classになっているPreferenceFragmentってのが、Fragmentだろう。
それをnewして置き換えるように書かれているところが「複数のFragmentを集めて1つのActivityを作る」というところの一端なんだろう(ここではFragmentが1つしかないので)。
Activityっていう動物園があって、そのなかにゾウたちのFragmentとかトラたちのFragmentとかがそれぞれ入っているようなイメージなのかな(なんで動物園なんだ・・・)。
動物園の認識は合ってます。
返信削除Fragmentは使いこなせば多画面対応とかがぐっと楽になって素敵ですが、画面サイズとか気にしない間はあまりメリットないです。
できたらお行儀がいいって感じかなぁ。
なるほど、お行儀ですか。
削除私の場合、どうしても「お客さんの要望」があるので、自分でどうでもよくても、というのがありますね。
レイアウトとかがまだ操れないですが・・・。
なんかもう、いつもみたいに、LEDの点滅周期とかブザーの鳴動間隔とかで許してくれないですかね。
そういう一次元の表現ばっかりやってると、画面で表せっていきなり言われると戸惑っちまいます・・。