Android开发:使用SQLite数据库保存新闻教程
Android开发:使用SQLite数据库保存新闻教程
本教程将带你一步步创建一个简单的Android应用,该应用可以将新闻标题和内容保存到SQLite数据库中。
1. 创建布局文件 (activity_main.xml)
首先,我们需要创建一个布局文件,用于显示输入新闻标题和内容的界面,以及一个用于触发保存操作的按钮。xml
<EditText android:id='@+id/editTextTitle' android:layout_width='match_parent' android:layout_height='wrap_content' android:hint='Title' />
<EditText android:id='@+id/editTextContent' android:layout_width='match_parent' android:layout_height='wrap_content' android:hint='Content' />
<Button android:id='@+id/buttonSave' android:layout_width='wrap_content' android:layout_height='wrap_content' android:text='Save' />
2. 创建Activity文件 (MainActivity.java)
接下来,我们需要创建Activity文件,并在其中编写处理用户交互和数据库操作的逻辑代码。javaimport android.content.ContentValues;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private EditText editTextTitle, editTextContent; private Button buttonSave; private SQLiteDatabase database;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
// 初始化视图 editTextTitle = findViewById(R.id.editTextTitle); editTextContent = findViewById(R.id.editTextContent); buttonSave = findViewById(R.id.buttonSave);
// 创建或打开数据库 database = openOrCreateDatabase('news.db', MODE_PRIVATE, null);
// 创建新闻表 database.execSQL('CREATE TABLE IF NOT EXISTS news (id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT, content TEXT)');
// 保存按钮点击事件 buttonSave.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String title = editTextTitle.getText().toString(); String content = editTextContent.getText().toString();
// 插入新闻数据 ContentValues values = new ContentValues(); values.put('title', title); values.put('content', content); long rowId = database.insert('news', null, values);
if (rowId != -1) { Toast.makeText(MainActivity.this, 'News saved successfully', Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, 'Failed to save news', Toast.LENGTH_SHORT).show(); } } }); }
@Override protected void onDestroy() { super.onDestroy(); // 关闭数据库连接 database.close(); }}
代码解释
- 布局文件 (activity_main.xml): 定义了用户界面,包括输入标题和内容的文本框,以及一个保存按钮。* Activity文件 (MainActivity.java): * 初始化视图元素,并将它们与布局文件中的对应元素关联起来。 * 创建或打开名为 'news.db' 的SQLite数据库。 * 创建一个名为 'news' 的表,用于存储新闻标题和内容。 * 为保存按钮设置点击事件监听器,当用户点击按钮时,将从文本框中获取输入的标题和内容,并将它们插入到数据库的 'news' 表中。 * 最后,在
onDestroy()方法中关闭数据库连接。
总结
通过以上步骤,我们成功创建了一个简单的Android应用,可以将新闻数据保存到SQLite数据库中。你可以根据自己的需求对代码进行修改和扩展,例如添加读取、更新和删除新闻数据的功能。
原文地址: https://www.cveoy.top/t/topic/f34A 著作权归作者所有。请勿转载和采集!