package com.example.user.android2lesson_02_simpleadapter;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
// simpleAdapter是一种基本版的完整的列表视图。
public class MainActivity extends AppCompatActivity {
// listView在iOS开发里面叫UITableView
// iOS里面没有包的概念,有命名空间
// simpleAdapter可以进行布局定制,从而达到自定义的效果
// simpleAdapter步骤一:创建一个布局文件,用来给Item(Cell)进行布局
// simpleAdapter步骤二:在MainActivity布局文件中添加ListView
// simpleAdapter步骤三:声明属性并且进行初始化
private ListView mListview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 进行初始化
mListview = (ListView) findViewById(R.id.listView);
// simpleAdapter步骤四:创建一个simpleAdapter
// 参数一:是传递的一个的上下文对象
// 参数二:要显示的数据
// 参数三:数据显示的布局文件
// 参数四:数据提取时用到的键
// 参数五:数据对应的布局文件中的控件ID
SimpleAdapter adapter = new SimpleAdapter(this, getData(),
R.layout.list_item_layout, new String[]{"image", "title", "info"},
new int[] {R.id.image,R.id.title,R.id.info});
// simpleAdapter步骤五:将adapter和listView进行绑定
mListview.setAdapter(adapter);
}
// 在这个方法里面进行数据的创建和初始化,拼装和显示的数据
private List<Map<String,Object>> getData(){
List<Map<String,Object>> list=new ArrayList<>();
Map<String,Object> map=new HashMap<>();
map.put("image",R.drawable.image1);
map.put("title","啦啦啦啦啦");
map.put("info","sdtewrt");
list.add(map);
Map<String,Object> map1=new HashMap<>();
map1.put("image",R.drawable.image2);
map1.put("title","adfasdf");
map1.put("info","线程vbxcvb");
list.add(map1);
Map<String,Object> map2=new HashMap<>();
map2.put("image",R.drawable.image3);
map2.put("title","adfasdf");
map2.put("info","线程vbxcvb");
list.add(map2);
return list;
}
}
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
// simpleAdapter是一种基本版的完整的列表视图。
public class MainActivity extends AppCompatActivity {
// listView在iOS开发里面叫UITableView
// iOS里面没有包的概念,有命名空间
// simpleAdapter可以进行布局定制,从而达到自定义的效果
// simpleAdapter步骤一:创建一个布局文件,用来给Item(Cell)进行布局
// simpleAdapter步骤二:在MainActivity布局文件中添加ListView
// simpleAdapter步骤三:声明属性并且进行初始化
private ListView mListview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 进行初始化
mListview = (ListView) findViewById(R.id.listView);
// simpleAdapter步骤四:创建一个simpleAdapter
// 参数一:是传递的一个的上下文对象
// 参数二:要显示的数据
// 参数三:数据显示的布局文件
// 参数四:数据提取时用到的键
// 参数五:数据对应的布局文件中的控件ID
SimpleAdapter adapter = new SimpleAdapter(this, getData(),
R.layout.list_item_layout, new String[]{"image", "title", "info"},
new int[] {R.id.image,R.id.title,R.id.info});
// simpleAdapter步骤五:将adapter和listView进行绑定
mListview.setAdapter(adapter);
}
// 在这个方法里面进行数据的创建和初始化,拼装和显示的数据
private List<Map<String,Object>> getData(){
List<Map<String,Object>> list=new ArrayList<>();
Map<String,Object> map=new HashMap<>();
map.put("image",R.drawable.image1);
map.put("title","啦啦啦啦啦");
map.put("info","sdtewrt");
list.add(map);
Map<String,Object> map1=new HashMap<>();
map1.put("image",R.drawable.image2);
map1.put("title","adfasdf");
map1.put("info","线程vbxcvb");
list.add(map1);
Map<String,Object> map2=new HashMap<>();
map2.put("image",R.drawable.image3);
map2.put("title","adfasdf");
map2.put("info","线程vbxcvb");
list.add(map2);
return list;
}
}