Advertisement
Guest User

Untitled

a guest
Jul 1st, 2015
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.16 KB | None | 0 0
  1. public class DataBase {
  2.  
  3. private static final String DB_NAME = "myDB";
  4. private static final int DB_VERSION = 1;
  5. private static final String DB_TABLE = "myTABLE";
  6.  
  7. public static final String COLUMN_ID = "_id";
  8. public static final String COLUMN_CB = "checked";
  9. public static final String COLUMN_TXT = "text";
  10.  
  11. private static final String DB_CREATE =
  12. "create table " + DB_TABLE + "(" +
  13. COLUMN_ID + " integer primary key autoincrement, " + // + COLUMN_CB + " integer, "
  14.  
  15. COLUMN_TXT + " text" +
  16. ");";
  17.  
  18. private final Context myContext;
  19.  
  20. private DBHelper myDBhelper;
  21. private SQLiteDatabase myDB;
  22.  
  23. public DataBase(Context myContext) {
  24. this.myContext = myContext;
  25. }
  26.  
  27. // открыть подключение
  28. public void open() {
  29. myDBhelper = new DBHelper(myContext,DB_NAME,null,DB_VERSION);
  30. myDB=myDBhelper.getWritableDatabase();
  31. }
  32.  
  33. // закрыть подключение
  34. public void close() {
  35. if (myDBhelper!=null) myDBhelper.close();
  36.  
  37. }
  38.  
  39. //получить все данные из DB_TABLE
  40. public Cursor getAllData() {
  41. return myDB.query(DB_TABLE,null,null,null,null,null,null);
  42. }
  43.  
  44. // добавить запись в DB_TABLE
  45. public void addRec(String text) {
  46. ContentValues cv = new ContentValues();
  47. // cv.put(COLUMN_CB,0);
  48. cv.put(COLUMN_TXT,text);
  49. myDB.insert(DB_TABLE,null,cv);
  50. }
  51.  
  52. // удалить запись из DB_TABLE
  53. public void delRec (long id){
  54. myDB.delete(DB_TABLE,COLUMN_ID + "="+ id,null);
  55. }
  56.  
  57.  
  58. private class DBHelper extends SQLiteOpenHelper{
  59. private DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
  60. super(context, name, factory, version);
  61. }
  62.  
  63. @Override
  64. public void onCreate(SQLiteDatabase sqLiteDatabase) {
  65. sqLiteDatabase.execSQL(DB_CREATE);
  66. // ContentValues cv = new ContentValues();
  67. // cv.put(COLUMN_TXT,"Проснуться");
  68. // sqLiteDatabase.insert(DB_TABLE,null,cv);// contentvalues ?????
  69. }
  70.  
  71. @Override
  72. public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i2) {
  73.  
  74. }
  75. }
  76.  
  77.  
  78. }
  79.  
  80. public class MainActivity extends Activity implements LoaderManager.LoaderCallbacks<Cursor> {
  81.  
  82. ListView lvData;
  83. DataBase database;
  84. SimpleCursorAdapter cursorAdapter;
  85.  
  86. @Override
  87. protected void onCreate(Bundle savedInstanceState) {
  88. super.onCreate(savedInstanceState);
  89. setContentView(R.layout.activity_main);
  90.  
  91. database = new DataBase(this);
  92. database.open();
  93.  
  94. String[] from = new String[]{DataBase.COLUMN_TXT};
  95. int[] to = new int[]{R.id.taskname};
  96.  
  97. lvData = (ListView) findViewById(R.id.lvData);
  98. lvData.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
  99. cursorAdapter = new SimpleCursorAdapter(this, R.layout.item, null, from, to, 0);
  100. lvData.setAdapter(cursorAdapter);
  101.  
  102. getLoaderManager().initLoader(0, null, this);
  103. }
  104.  
  105. public void onAddButtonClick(View view) {
  106. Intent intent = new Intent(this,InputTask.class);
  107. startActivityForResult(intent,1);
  108. }
  109.  
  110. @Override
  111. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  112. super.onActivityResult(requestCode, resultCode, data);
  113.  
  114. String descr = data.getStringExtra("task");
  115. database.addRec(descr);
  116. getLoaderManager().getLoader(0).forceLoad();
  117. }
  118.  
  119. @Override
  120. protected void onDestroy() {
  121. super.onDestroy();
  122. database.close();
  123. }
  124.  
  125. @Override
  126. public Loader<Cursor> onCreateLoader(int i, Bundle bundle) {
  127. return new MyCursorLoader(this, database);
  128. }
  129.  
  130. @Override
  131. public void onLoadFinished(Loader<Cursor> cursorLoader, Cursor cursor) {
  132. cursorAdapter.swapCursor(cursor);
  133. }
  134.  
  135. @Override
  136. public void onLoaderReset(Loader<Cursor> cursorLoader) {
  137.  
  138. }
  139.  
  140. static class MyCursorLoader extends CursorLoader {
  141.  
  142. DataBase db;
  143.  
  144. public MyCursorLoader(Context context, DataBase db) {
  145. super(context);
  146. this.db = db;
  147. }
  148.  
  149. @Override
  150. public Cursor loadInBackground() {
  151. Cursor cursor = db.getAllData();
  152. return cursor;
  153. }
  154.  
  155. }
  156. }
  157.  
  158. <?xml version="1.0" encoding="utf-8"?>
  159.  
  160. android:layout_width="wrap_content"
  161. android:layout_height="wrap_content"
  162. android:onClick="onAddButtonClick"
  163. android:text="@string/add_record">
  164. </Button>
  165. <Button
  166. android:layout_gravity="end"
  167. android:layout_width="wrap_content"
  168. android:layout_height="wrap_content"
  169. android:onClick="onDeleteButtonClick"
  170. android:text="@string/delete_record">
  171.  
  172. </Button>
  173. </FrameLayout>
  174. <ListView
  175. android:id="@+id/lvData"
  176. android:layout_width="match_parent"
  177. android:layout_height="wrap_content">
  178. </ListView>
  179.  
  180. <?xml version="1.0" encoding="utf-8"?>
  181.  
  182. <CheckedTextView
  183. android:id="@+id/taskname"
  184. android:layout_width="wrap_content"
  185. android:layout_height="wrap_content"
  186. android:checkMark="?android:attr/listChoiceIndicatorMultiple"
  187. android:checked="true"
  188. />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement