public class MySimpleCursorAdapter extends SimpleCursorAdapter {
private LayoutInflater mInflater;
private OnMyAdaptertListener mListener;
int[] ids;
String[] str;
int layoutId;
@SuppressWarnings("deprecation")
public MySimpleCursorAdapter(Context context, int layout, Cursor c,
String[] string, int[] id) {
super(context, layout, c, string, id);
ids = id;
str = string;
layoutId = layout;
mContext = context;
mInflater = LayoutInflater.from(context);
}
@Override
public void bindView(View view, Context context, Cursor cursor) {
TextView number = (TextView) view.findViewById(R.id.number);
final String text = cursor.getString(cursor.getColumnIndex(str[0]));
ImageView delete = (ImageView) view.findViewById(R.id.img);
number.setText(text);
delete.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (mListener != null) {
mListener.onDelClicked(text);
}
}
});
}
@Override
public View newView(Context arg0, Cursor arg1, ViewGroup arg2) {
return mInflater.inflate(layoutId, arg2, false);
}
public void setMyAdapterListener(OnMyAdaptertListener listener) {
mListener = listener;
}
public interface OnMyAdaptertListener {
public void onDelClicked(String text);
}
}
分享到:
相关推荐
Android提供了多种预定义的适配器,如ArrayAdapter、SimpleCursorAdapter等,也可以自定义适配器。在上面的例子中,我们使用了ArrayAdapter来绑定字符串数组到ListView。 **自定义视图** 虽然Android提供了默认的...
SimpleCursorAdapter adapter = new SimpleCursorAdapter( this, android.R.layout.simple_list_item_2, cursor, new String[]{COLUMN_NAME, COLUMN_DESCRIPTION}, new int[]{android.R.id.text1, android....
在这个例子中,`custom_row_layout`是自定义的布局文件,`COLUMN_NAME`是数据库中要显示的列名,`R.id.text_view_id`是布局文件中要绑定该列数据的TextView的ID。 总结来说,Android中的ListView适配器机制是数据...
- 对于大量数据,使用CursorAdapter或SimpleCursorAdapter配合SQLite数据库,可提高性能并减少内存消耗。 - 使用`registerForContextMenu()`和`unregisterForContextMenu()`管理上下文菜单,避免不必要的资源消耗...
总结来说,这个游标列表案例展示了如何在Android中使用`ListActivity`、`ContentResolver`、`Cursor`和`SimpleCursorAdapter`来从数据库获取数据并显示在ListView中。理解这一机制对于开发涉及数据展示的Android应用...
在Android中,有多种预定义的Adapter类供开发者选择,包括BaseAdapter、SimpleAdapter、ArrayAdapter和SimpleCursorAdapter等。BaseAdapter是一个抽象类,提供了最基本的框架,开发者可以根据需求重写必要的方法以...
- **Adapter的使用**:除了ArrayAdapter,还可以使用BaseAdapter、SimpleCursorAdapter等,支持更复杂的数据结构和数据来源。 - **Spinner Mode**:`android:spinnerMode`属性可设置为“dialog”(弹出对话框)或...
在这个例子中,你需要重写`getView`方法来自定义每个选项的显示内容。 3. **CursorAdapter数据源** 当数据源来自于数据库或者ContentProvider时,可以使用CursorAdapter。首先执行查询操作获取Cursor: ```java ...
在这个例子中,我们使用Gallery组件来显示一系列的图片,并且当用户点击某张图片时,可以在下方以较大的尺寸展示这张图片。 ##### 布局文件 布局文件中包含了Gallery和ImageView两个组件。Gallery用于展示一系列的...
在Android应用开发中,搜索功能是一项非常常见的需求,它能够帮助用户快速找到所需的信息。...这个例子提供了一个基础的实现方案,开发者可以根据自己的需求进行扩展和优化,例如增加搜索建议、搜索排序等功能。
在这个例子中,可能会使用自定义的Java类继承ArrayAdapter,重写`getView()`方法以构建每个列表项的视图。 3. **数据绑定**: - 在Adapter中,我们需要将数据绑定到ListView的每一行。这通常涉及使用...
在同一个SQLiteOpenHelper的子类中,你可以重写onUpgrade()方法,当数据库版本升级时调用,但在此项目中可能是onCreate()方法,因为这是初次创建。创建表的SQL语句可能如下: ```java String CREATE_TABLE = ...
在Android开发中,ListView是一个非常重要的组件,它用于展示大量数据列表,通常用于实现像联系人列表、消息列表等常见的用户界面。...这个例子是一个很好的起点,可以帮助初学者快速上手Android开发中的ListView使用。
SimpleCursorAdapter adapter = new SimpleCursorAdapter( this, R.layout.list_item, cursor, new String[]{"column1", "column2"}, new int[]{R.id.view1, R.id.view2}, 0 ); listView.setAdapter(adapter);...
然而,系统提供的预设适配器,如ArrayAdapter、SimpleAdapter和SimpleCursorAdapter,往往无法满足复杂的UI需求和事件处理。在这种情况下,我们需要自定义Adapter来实现更加灵活的功能。下面我们将详细探讨自定义...