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:Kotlin Java Kotlin android Kotlin
  2. Android面试系列文章2018之Android部分WebView篇
  3. Android面试系列文章2018之Android部分Activity篇
  4. Android面试系列文章2018之Android部分WebView篇
  5. android技术文章网址
  6. Android必备:Android(安卓)Socket编程的了解与学习整理
  7. Android异步处理系列文章四篇之二 使用AsyncTask异步更新UI界面
  8. 系出名门 Android(安卓)系列文章索引
  9. Android游戏引擎-Rokon

随机推荐

  1. 快速理解android View的测量onMeasure()
  2. Android面试整理(2016)
  3. android中LayoutInflater的使用
  4. android sqlite的增删改查
  5. android的UI系统分析
  6. ArcGIS Runtime for Android 使用异步GP
  7. Android横竖屏切换的解决方法
  8. Andrioid SystemProperties和Settings.Sy
  9. 【Android】Replace "..." with ellipsis
  10. android引入JAR包,打包成JAR包,打包成Libra