Logs raquo ;;
@ Overridevoid onCreate (SQLiteDatabase db) {.d (LOG_TAG, --- onCreate database --- );
//створюємо таблицю з полямі.execSQL ( create table frogtableadd (
+ id integer primary key autoincrement,
+ foreignword text,
+ ukrainianword text + Laquo;); );
}
}
//размещения елементів в базу даніхforeignWord=data.getStringExtra ( foreignWord ); ukrainianWord=data.getStringExtra ( ukrainianWord ); cv=new ContentValues ??(); dbAdd=dbHelperAdd.getWritableDatabase ();
. put ( foreignword raquo ;, foreignWord) ;. put ( ukrainianword raquo ;, ukrainianWord);
//елементи бібліотек, Які були використаніandroid.database.sqlite.SQLiteDatabase;android.database.sqlite.SQLiteOpenHelper;android.content.ContentValues;
відалення слів.
При відаленні елементів з бази даних, вікорістовується поиск по базі даних.
enrtyFDel=data.getIntExtra ( entryFDel raquo ;, 0);// Індикатор входу з dbAdd=dbHelperAdd.getWritableDatabase (); (enrtyFDel == 0) {.put ( foreignword raquo ;, foreignWord) ;. put ( ukrainianword raquo ;, ukrainianWord); rowID=dbAdd.insert ( frogtableadd raquo ;, null, cv) ;. d (LOG_TAG, row inserted, ID= + rowID) ;. add (0, foreignWord + - + ukrainianWord) ;. notifyDataSetChanged ();
}
//Елементи бібліотекandroid.database.Cursor;android.database.sqlite.SQLiteDatabase;android.database.sqlite.SQLiteOpenHelper;android.widget.Toast;java.util.ArrayList;
. Вихідний інтерфейс можна розділіті на Такі елементи:
Отримання даних з бази даних
Базові алгоритми и Структури даних - база даних. Дані з бази даних отримуються за домігся про єкту класу Cursor. Доступ ее елементів забезпечується методами moveToFirst (), moveToNext ():
c=dbAdd.query ( frogtableadd raquo ;, null, null, null, null, null, null); (c.moveToFirst ()) {
//візначаємо номера стовбців по имени в віборціidColIndex=c.getColumnIndex ( id ); foreignColIndex=c.getColumnIndex ( foreignword ); ukrainianColIndex=c.getColumnIndex ( ukrainianword ); {. add (0, c.getString (foreignColIndex) + - + .getString (ukrainianColIndex)) ;. notifyDataSetChanged ();
} while (c.moveToNext ());
//Елементи бібліотекandroid.database.Cursor;android.database.sqlite.SQLiteDatabase;android.database.sqlite.SQLiteOpenHelper;
Виведення даних в ListView
Базові алгоритми и Структури даних - Динамічний масив, список. Дані віводяться з помощью ArrayAdapter, в Який передаються елементи з дінамічного масиву, Який реалізованій помощью Колекції ArrayList. ВІН дозволяє Виводити слова в список ListView:
//ініціалізуємо Динамічний масив и список ListViewwordList;=(ListView) findViewById (R.id.wordList); static ArrayList lt; String gt; words=new ArrayList lt; String gt; ();
//створюємо adapter.setChoiceMode (ListView.CHOICE_MODE_SINGLE);=new ArrayAdapter lt; String gt; (this, .layout.my_list_item, words);
//Прив яжемо масив через адаптер до ListView.setAdapter (adapter);
//Виведення елементів в спісок.add (0, c.getString (foreignColIndex) + - + .getString (ukrainianColIndex)) ;. notifyDataSetChanged ();
//Елементи бібліотекandroid.widget.ArrayAdapter; android.widget.ListView; java.util.ArrayList;
3.3 Реалізація програми
На прікладі реализации активностей AddActivity та AddWordsActivity можна продемонструваті роботові базових алгоритмів та структур даних. З AddActivity, натиснути кнопку Додати нове слово можна перейти в AddWordsActivity, з которого користувач має змогу ввести Нові слова, для Вивчення. ЦІ слова, помощью хеш табліці переносячи в AddActivity, а самє в базу даних. Такоже, смороду віводяться в ListView, вікорістовуючі при цьом Динамічний масив та список, для перегляду користувачем введених слів.
//бібліотекиandroid.app.Activity;android.content.ContentValues;android.content.Context;android.content.Intent;android.database.Cursor;android.database.sqlite.SQLiteDatabase;android.database.sqlite.SQLiteOpenHelper;android.os.Bundle;android.util.Log;android.view.View;android.widget.ArrayAdapter;android.widget.Button;android.widget.ListView;android.widget.Toast;java.util.ArrayList;
class AddActivity extends Activity implements .OnClickListener {
...