Android SQLiteDatabase数据库, SimpleCursorAdapter, Cursor
来源:互联网 发布:高新区行知小学好不好 编辑:程序博客网 时间:2024/06/14 04:40
创建SimpleCursorAdapter 所指定的layout
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:id="@+id/my_title" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <EditText android:id="@+id/my_content" android:layout_width="wrap_content" android:layout_height="wrap_content" /></LinearLayout>
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="shortcut.song.com.myapplication.DBTestActivity"> <Button android:id="@+id/btn_db" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="DB"/> <EditText android:id="@+id/edit_title_db" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:id="@+id/edit_content_db" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <ListView android:id="@+id/listview_db" android:layout_width="fill_parent" android:layout_height="fill_parent" android:divider="#0f25" android:dividerHeight="1px"/></LinearLayout>
package shortcut.song.com.myapplication;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteException;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.CursorAdapter;import android.widget.EditText;import android.widget.ListView;import android.widget.SimpleCursorAdapter;public class DBTestActivity extends AppCompatActivity { SQLiteDatabase db; Button btn = null; ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_dbtest); //创建或打开数据库(此处需要使用绝对路经) db = SQLiteDatabase.openOrCreateDatabase(this.getFilesDir().toString()+"/my.db3", null); listView = (ListView)findViewById(R.id.listview_db); btn = (Button)findViewById(R.id.btn_db); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //获取用户输入 String title = ((EditText)findViewById(R.id.edit_title_db)).getText().toString(); String content = ((EditText)findViewById(R.id.edit_content_db)).getText().toString(); try { insertData(db , title , content); Cursor cursor = db.rawQuery("select * from news_inf", null); inflateList(cursor); } catch (SQLiteException e) { //执行DDL创建数据表 //执行DDL创建数据表 db.execSQL("create table news_inf(_id integer primary key autoincrement," + " news_title varchar(50)," + " news_content varchar(255))"); //执行insert语句插入数据 insertData(db , title , content); //执行查询 Cursor cursor = db.rawQuery("select * from news_inf", null); inflateList(cursor); } } }); } private void insertData(SQLiteDatabase db, String title, String content){ //执行插入语句 //执行插入语句 db.execSQL("insert into news_inf values(null , ? , ?)" , new String[]{title , content}); } private void inflateList(Cursor cursor) { SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter( DBTestActivity.this ,R.layout.db_line, cursor ,new String[]{"news_title", "news_content"} ,new int[]{R.id.my_title, R.id.my_content} , CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); listView.setAdapter(simpleCursorAdapter); } @Override protected void onDestroy() { super.onDestroy(); if (db != null && db.isOpen()) { db.close(); } }}
运行效果:
阅读全文
0 0
- Android SQLiteDatabase数据库, SimpleCursorAdapter, Cursor
- Days13 SQLiteDatabase&SQLiteOpenHelper&SimpleCursorAdapter
- [android]数据库SQLiteDatabase简介
- Android 数据库SQLiteDatabase
- android sqlitedatabase 数据库
- Android SQLiteDatabase 数据库存储
- Android数据库SQLiteDatabase
- Android 创建数据库 SQliteDatabase
- Android sqlitedatabase 数据库创建
- android SQLite (Cursor SQLiteDatabase SQLiteOpenHelper ContentValues ContentProvider) 总结
- 关于android的SQLiteDatabase和Cursor的一些疑问
- Android数据库(SQLiteDatabase)使用小结
- Android 数据库SQLiteDatabase的使用
- android-SQLiteDatabase 和 SQLite 数据库
- Android 数据库SQLiteDatabase的使用
- Android 数据库SQLiteDatabase的使用!!
- Android数据库(SQLiteDatabase)使用小结
- Android 数据库SQLiteDatabase的使用!!
- LCA (最近公共祖先问题)
- SQL:count(col)不统计col为null的行
- 多线程与多进程比较
- Linux源码—异常
- linux的查找命令
- Android SQLiteDatabase数据库, SimpleCursorAdapter, Cursor
- mac下安装php-redis扩展
- android反编译-修改别人apk(如何无视R文件,使用新增布局xml drawable等)
- Linux服务管理---系统运行级别、rpm启动与自启动、源码包的启动
- 常用Linux进程及作业管理命令
- 类的虚继承
- UESTC-1633 去年春恨却来时,落花人独立,微雨燕双飞(取模最短路)
- C# 生成软件注册码
- Error:SSL peer shut down incorrectly(完美解决)