package com.example.liguofeng.simpleadapter;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private String[] names = {"Java", "Android", "Spring", "Linux"};
private String[] details = {"Java is a programming language",
"Android is a OS",
"Spring is a framework",
"Linux is a OS."};
private int[] images = {
R.drawable.java,
R.drawable.android,
R.drawable.spring,
R.drawable.linux,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// MAP作成
List<Map<String, Object>> itemList = new ArrayList<Map<String, Object>>();
for (int i = 0; i < names.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", names[i]);
map.put("detail", details[i]);
map.put("image", images[i]);
itemList.add(map);
}
// SimpleAdapter作成
SimpleAdapter simple = new SimpleAdapter(
this, // CONTEXT
itemList, // リストの要素
R.layout.simple_item, // LayoutのID
new String[]{"name", "detail", "image"}, // キー
new int[]{R.id.name, R.id.detail, R.id.image} // Layout内コンポーネントID
);
ListView list = (ListView) findViewById(R.id.list);
// SimpleAdapter設定
list.setAdapter(simple);
final TextView textView1 = (TextView) findViewById(R.id.showClicked);
// ListViewのITEMクリックイベント
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
textView1.setText(names[position] + "がクリックされました");
}
});
}
}