ListViewのお話

2014/04/26 01:32:17
GW始まったで~!


それに伴い、Studio nekoでもセール始めてみました^ω^

Google Play ストア見てみてね。


今までのアプリも今月はちょこちょこ更新いれて、

多少は使いやすくしたりとかしてるので試してみてちょんまげ。


ということで、今回はねこったぁを作ってる際に???となったので、

それについてのまとめというか、久々にAndroidのお話をしたいと思います。




まずAndroidのListViewとはなんぞや?




上の画像の赤枠で囲まれたのがListViewという物です。

iPhoneなんかが出てきてよく見かけるようになってると思いますが、

AndroidではListViewと呼びます。

iOSではなんて呼ぶか知らん。

そんで、ListViewを表示するための中身を配列で作ります。

つまりListViewにint型、String型と別の型同士を入れることはできません。

一つの型だけです!!




















多分。


通常は独自の型をclass化して使いますね。

それでこの中身をAdapterと言います。






















多分。









それでは、簡単なロジックを見てみましょう。


ListView lv = new ListView(this);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, Strings);
adapter.add = "おまえは";
adapter.add = "もう";
adapter.add = "死んでんねんで!";
lv.setAdapter(adapter);




これだけです。

簡単ですね。


しかしListViewで『ねこったぁ』の様に情報をイロイロ表示しようとすると、

ArrayAdapterをextendした独自のアダプタに独自の構造体を作らなければいけません。



ListView lv = new ListView(this);
ArrayList<OrenoClass> list = new ArrayList<OrenoClass>();
// 中略
for(OrenoClass o : orenoclasses){
list.add();
}
OrenoAdapter adapter = new OrenoAdapter(this, R.layout.ore, list);
lv.setAdapter(adapter);

public class OrenoAdapter extends ArrayAdapter<OrenoClass>{
// 中略
}

public class OrenoClass{
// 中略
}



といった感じになります。


まぁここまでは小学生でも知ってることなので、ListViewから削除したい!

今回はこれについて熱く語りたかったので、筆を執りました。

ListViewのある部分を消す場合には、adapterを取り出し操作することでできます。



OrenoClass ore; // 消したいオブジェクトとする
ListView lv;
// アダプターを取得する
OrenoAdapter adpter = (OrenoAdapter)lv.getAdapter();
// 消す
adpter.remove(ore);
adpter.notifyDataSetChanged();



実にシンプルでわかりやすいですね。



でもある機能を入れた時にその事件は起こったんだ...




まさかあんなことになるなんて...
































ドス!!

























目の前にはただ赤


ぼくの喉からあふれ出す血の赤


最後に思ったのは、一人残った真理はどうするのだろう、ということだった


死体の山の中でただ一人


ぼくは真理が可哀想になった


……真理……














気に入ったら押してね
  ブログランキング・にほんブログ村へ




~こんなアプリ出してます~

authored by Noraneko | Comment(0) | Android
コメント


お名前*

Email Address

URL

コメント*



BLOG内検索
<< 2024/11 >>
Sun Mon Tue Wed Thu Fri Sat
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
<< 過去ログ >>