Listview の使い方
ListViewの各アイテムごとの区切り線を消す
<ListView android:layout_width="match_parent" android:layout_height="wrap_content" android:divider="@null" android:dividerHeight="10dp" />
android:divider="@null" これ!
android:divider="#000000"
android:dividerHeight="2sp"
これで色と太さが変わります。
①リスト表示 のお決まりパターン
//ID 取得
ListView lv = (ListView)findViewById(R.id.listView1);
//アダプタセット
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(
this,
R.layout.listcell,
R.id.textView1,
entries);
lv.setAdapter(adapter);
// R.layout.listcell リストの1行の色の設定などしている layout ファイル
// listcell のテキスト
// entries という配列にデータがはいってる String[] entries = new String[numRows];
② リスト クリックされた時の処理
//リストクリック処理
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// intent Yorumenu2Activity へ
Intent intent = new I ntent(Ymenu2Activity.this,Ymenu3Activity.class);
//PUTExtraの引数設定
final int pos2 = position;
intent.putExtra("pos1",pos1); //クリックされたPOSITION
intent.putExtra("pos2",pos2);
startActivity(intent);
}
});
/* クリックされたら、Ymenu3Activity.classをよびだす。
その時の引数は putExtra で設定
ちなみに、リスト1番目クリックは position=0 */
長押し処理
// **************************** リストロングクリック
lv.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
// TODO Auto-generated method stub
Intent intent = new Intent(SeanActivity.this,StbeditActivity.class);
startActivity(intent);
Log.v("long clicked","pos"+" "+pos);
return true;
}
});
// ***************************** リストロングクリック ここまで**
return true; で終わるのと false でおわるのは何が違うか理解不能!!!