前回の続き。
http://codezine.jp/article/detail/4670
ということでまずはレイアウトを作成。
BizCard/res/layout/main.xml
<LinearLayout>で全体のレイアウトを作成、<ListView>でその中に表示するコンテンツを並べています。
現在は"@+id/list"が空っぽなので何も表示されません。
ということで値を入れてみます。
BizCard/src/com.example.bizcard/ListActivity.java
CodeZineの説明が正直よくわからなかったので俺語訳しています。
ListViewは突っ込んだ配列を全部順番に表示するビューです。
Androidのメニューはたいがいこれを使ってそうな見た目になっています。
えーと、<String>ってなんだったっけ。
Javaが久しぶりすぎて何もかもを忘れてしまった。
これでもSJC-PとSJC-WCとSJC-WS持ってるんだがこれはゴミか?ゴミです。
ArrayAdapterはあらゆるオブジェクトを突っ込めてしまうので、うっかりarrayAdapter.add(new Object())とか書かれてしまう可能性もあります。
まあObjectであればObject.toString()が発動して"java.lang.Object@43e9b648"とかなんだかよくわからない値が表示されるだけなのですが、想定外の動作にはかわりありません。
そこで<String>と型を指定することで、挿入も取得もString型しか使用できないように強制します。
arrayAdapter.add(new Object())と書いてもコンパイルで弾かれるようになります。
android.widget.ArrayAdapterの第二引数にはリソースを渡せるのですが、とりあえずどの値がどういう意味なのかがわからん。
http://developer.android.com/intl/ja/reference/android/widget/ArrayAdapter.html
http://developer.android.com/intl/ja/reference/android/R.layout.html
そんな数値だけ書かれても。
とりあえず以上で"新規追加"メニューが表示されました。
Androidの記事
http://codezine.jp/article/detail/4670
ということでまずはレイアウトを作成。
BizCard/res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/list" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout>
<LinearLayout>で全体のレイアウトを作成、<ListView>でその中に表示するコンテンツを並べています。
現在は"@+id/list"が空っぽなので何も表示されません。
ということで値を入れてみます。
BizCard/src/com.example.bizcard/ListActivity.java
package com.example.bizcard; public class ListActivity extends Activity { // 一覧表示用ListView private ListView listView = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // 配列を作成 ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1); // 要素を追加 arrayAdapter.add("新規追加"); // main.xmlのandroid:id="@+id/list"を取得 listView = (ListView) findViewById(R.id.list); // 配列を突っ込む listView.setAdapter(arrayAdapter); } }
CodeZineの説明が正直よくわからなかったので俺語訳しています。
ListViewは突っ込んだ配列を全部順番に表示するビューです。
Androidのメニューはたいがいこれを使ってそうな見た目になっています。
えーと、<String>ってなんだったっけ。
Javaが久しぶりすぎて何もかもを忘れてしまった。
これでもSJC-PとSJC-WCとSJC-WS持ってるんだがこれはゴミか?ゴミです。
ArrayAdapterはあらゆるオブジェクトを突っ込めてしまうので、うっかりarrayAdapter.add(new Object())とか書かれてしまう可能性もあります。
まあObjectであればObject.toString()が発動して"java.lang.Object@43e9b648"とかなんだかよくわからない値が表示されるだけなのですが、想定外の動作にはかわりありません。
そこで<String>と型を指定することで、挿入も取得もString型しか使用できないように強制します。
arrayAdapter.add(new Object())と書いてもコンパイルで弾かれるようになります。
android.widget.ArrayAdapterの第二引数にはリソースを渡せるのですが、とりあえずどの値がどういう意味なのかがわからん。
http://developer.android.com/intl/ja/reference/android/widget/ArrayAdapter.html
http://developer.android.com/intl/ja/reference/android/R.layout.html
そんな数値だけ書かれても。
とりあえず以上で"新規追加"メニューが表示されました。
Androidの記事
PR
トラックバック
トラックバックURL: