package cn.itcast.db;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import cn.itcast.domain.Person;import cn.itcast.service.PersonService;import android.app.Activity;import android.content.ContentResolver;import android.content.ContentValues;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.Button;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.SimpleCursorAdapter;import android.widget.Toast;import android.widget.AdapterView.OnItemClickListener;public class MainActivity extends Activity {private static final String TAG = "MainActivity";    private ListView listView;    private PersonService service;        @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                Button button = (Button)this.findViewById(R.id.button);        button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {ContentResolver contentResolver = getContentResolver();Uri insertUri = Uri.parse("content://cn.itcast.provides.personprovider/person");ContentValues values = new ContentValues();values.put("name", "laofang");values.put("phone", "13800029333");values.put("amount", "1000");contentResolver.insert(insertUri, values);}});                listView = (ListView)this.findViewById(R.id.listView);        service = new PersonService(this);      /*  List<Person> persons = service.getScrollData(0, 5);               List<HashMap<String, Object>> data = new ArrayList<HashMap<String,Object>>();        for(Person person : persons){        HashMap<String, Object> item = new HashMap<String, Object>();        item.put("name", person.getName());        item.put("phone", person.getPhone());        item.put("amount", person.getAmount());        data.add(item);        }        SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.item,        new String[]{"name","phone", "amount"}, new int[]{R.id.name, R.id.phone, R.id.amount});        listView.setAdapter(adapter);                listView.setOnItemClickListener(new ItemClickListener());        */        Cursor cursor = service.getCursorScrollData(0, 5);        SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this, R.layout.item, cursor,        new String[]{"name","phone","amount"}, new int[]{R.id.name, R.id.phone, R.id.amount});                listView.setAdapter(cursorAdapter);        listView.setOnItemClickListener(new ItemClickListener());    }        private final class ItemClickListener implements OnItemClickListener{@Overridepublic void onItemClick(AdapterView<?> parent, View view, int position, long id) {ListView lView = (ListView)parent;/*HashMap<String, Object> item = (HashMap<String, Object>)lView.getItemAtPosition(position);Log.i(TAG, item.get("name").toString());Toast.makeText(MainActivity.this, item.get("name").toString(), 1).show();*/Cursor cursor = (Cursor)lView.getItemAtPosition(position);String name = cursor.getString(cursor.getColumnIndex("name"));Toast.makeText(MainActivity.this, name, 1).show();}        }}


        listView.setAdapter(cursorAdapter);        listView.setOnItemClickListener(new ItemClickListener());
深入了解Adapter,后续中再写一篇关于Adapter的文章。


更多相关文章

  1. Android面试系列文章2018之Android部分Activity篇
  2. Android面试系列文章2018之Android部分WebView篇
  3. android技术文章网址
  4. Android异步处理系列文章四篇之二 使用AsyncTask异步更新UI界面
  5. 系出名门 Android 系列文章索引
  6. 我的Android相关文章目录
  7. android开发系列文章集合
  8. Android异步处理系列文章四篇之四 AsyncTask的实现原理
  9. 那些年收藏的技术文章(一)-CSDN篇

随机推荐

  1. golang适合web开发吗?
  2. 详解 Go 中的不可变类型
  3. Golang 可以反编译吗?
  4. golang是否值得深入学习?
  5. GO语言中=和:=的区别介绍
  6. Go 语言中的 Context 详解
  7. golang是go语言吗?
  8. go语言中一些字符串操作介绍
  9. go语言通过命令方式生成可执行文件
  10. golang如何获取客户端ip?