Intereting Posts
Специальные символы заменяются квадратом в приложении для Android Введите переход по фрагменту с общим элементом, предназначенным для общего элемента В каком блоге разработки Android есть самые пошаговые руководства и учебные пособия? Как практически отображать математическую формулу в Android Может ли Android NFC работать как тег NFC? Заголовок Android DialogFragment не отображается ANDROID – определение цвета с использованием openCV – как? Определить рамки opencore или stagefright для медиапланера? Просмотр локального веб-сервера на Mac с именем компьютера, а не IP-адресом Приложение не запускается в визуальном студийном эмуляторе для Android в visual studio 2015 Динамически упорядочивать кнопки вокруг круга Как создать нечто похожее на макет Play Newsstand Расположение Android Studio JDK меняется до 1.7 каждый раз, когда обновляется до 1,8 пути Общий код для различных андроидов Как сделать подсказку EditText не для переноса?

Адаптер курсора и пример sqlite

Привет, я ищу пример кода, в котором используется адаптер курсора с sqlite?

Solutions Collecting From Web of "Адаптер курсора и пример sqlite"

Действительно простой пример.

Вот очень простой, но очень эффективный пример. Как только у вас есть основы, вы можете легко с этим справиться.

Существует две основные части использования адаптера курсора с SQLite:

  1. Создайте правильный курсор из базы данных.

  2. Создайте пользовательский адаптер курсора, который берет данные курсора из базы данных и связывает его с представлением, с которым вы собираетесь представлять данные.

1. Создайте правильный Курсор из базы данных.

В вашей деятельности:

SQLiteOpenHelper sqLiteOpenHelper = new SQLiteOpenHelper( context, DATABASE_NAME, null, DATABASE_VERSION); SQLiteDatabase sqLiteDatabase = sqLiteOpenHelper.getReadableDatabase(); String query = "SELECT * FROM clients ORDER BY company_name ASC"; // No trailing ';' Cursor cursor = sqLiteDatabase.rawQuery(query, null); ClientCursorAdapter adapter = new ClientCursorAdapter( this, R.layout.clients_listview_row, cursor, 0 ); this.setListAdapter(adapter); 

2. Создайте пользовательский адаптер курсора.

Примечание. Расширение от ResourceCursorAdapter предполагает использование XML для создания ваших представлений.

 public class ClientCursorAdapter extends ResourceCursorAdapter { public ClientCursorAdapter(Context context, int layout, Cursor cursor, int flags) { super(context, layout, cursor, flags); } @Override public void bindView(View view, Context context, Cursor cursor) { TextView name = (TextView) view.findViewById(R.id.name); name.setText(cursor.getString(cursor.getColumnIndex("name"))); TextView phone = (TextView) view.findViewById(R.id.phone); phone.setText(cursor.getString(cursor.getColumnIndex("phone"))); } } 

В Android, как использовать курсор с необработанным запросом в sqlite:

 Cursor c = sampleDB.rawQuery("SELECT FirstName, Age FROM mytable " + "where Age > 10 LIMIT 5", null); if (c != null ) { if (c.moveToFirst()) { do { String firstName = c.getString(c.getColumnIndex("FirstName")); int age = c.getInt(c.getColumnIndex("Age")); results.add("" + firstName + ",Age: " + age); }while (c.moveToNext()); } } c.close(); 

Пример CursorAdapter с Sqlite

 ... DatabaseHelper helper = new DatabaseHelper(this); aListView = (ListView) findViewById(R.id.aListView); Cursor c = helper.getAllContacts(); CustomAdapter adapter = new CustomAdapter(this, c); aListView.setAdapter(adapter); ... class CustomAdapter extends CursorAdapter { // CursorAdapter will handle all the moveToFirst(), getCount() logic for you :) public CustomAdapter(Context context, Cursor c) { super(context, c); } public void bindView(View view, Context context, Cursor cursor) { String id = cursor.getString(0); String name = cursor.getString(1); // Get all the values // Use it however you need to TextView textView = (TextView) view; textView.setText(name); } public View newView(Context context, Cursor cursor, ViewGroup parent) { // Inflate your view here. TextView view = new TextView(context); return view; } } private final class DatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "db_name"; private static final int DATABASE_VERSION = 1; private static final String CREATE_TABLE_TIMELINE = "CREATE TABLE IF NOT EXISTS table_name (_id INTEGER PRIMARY KEY AUTOINCREMENT, name varchar);"; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_TABLE_TIMELINE); db.execSQL("INSERT INTO ddd (name) VALUES ('One')"); db.execSQL("INSERT INTO ddd (name) VALUES ('Two')"); db.execSQL("INSERT INTO ddd (name) VALUES ('Three')"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } public Cursor getAllContacts() { String selectQuery = "SELECT * FROM table_name; SQLiteDatabase db = this.getReadableDatabase(); Cursor cursor = db.rawQuery(selectQuery, null); return cursor; } }