// 导入 android.content.ContentValues 类,用于存储键值对数据 import android.content.ContentValues; // 导入 android.database.sqlite.SQLiteDatabase 类,用于操作数据库 import android.database.sqlite.SQLiteDatabase; // 导入 android.os.Bundle 类,用于保存和传递数据 import android.os.Bundle; // 导入 android.view.View 类,用于创建用户界面组件 import android.view.View; // 导入 android.widget.Button 类,用于创建按钮组件 import android.widget.Button; // 导入 android.widget.EditText 类,用于创建文本输入框组件 import android.widget.EditText; // 导入 android.widget.Toast 类,用于显示短暂的提示消息 import android.widget.Toast; // 导入 androidx.appcompat.app.AppCompatActivity 类,用于创建活动 import androidx.appcompat.app.AppCompatActivity;

// 创建 MainActivity 类,继承自 AppCompatActivity 类 public class MainActivity extends AppCompatActivity { // 声明私有变量,用于引用界面上的文本输入框和按钮组件 private EditText editTextTitle, editTextContent; private Button buttonSave; // 声明私有变量,用于引用数据库帮助类对象 private NewsDatabaseHelper databaseHelper;

// 重写 onCreate() 方法
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // 设置活动的布局文件为 activity_main.xml
    setContentView(R.layout.activity_main);

    // 通过 findViewById() 方法获取界面上的文本输入框和按钮组件,并将其赋值给对应的变量
    editTextTitle = findViewById(R.id.editTextTitle);
    editTextContent = findViewById(R.id.editTextContent);
    buttonSave = findViewById(R.id.buttonSave);
    // 创建数据库帮助类对象
    databaseHelper = new NewsDatabaseHelper(this);
    
    // 为按钮组件设置点击事件监听器
    buttonSave.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // 调用 saveNewsToDatabase() 方法保存新闻到数据库
            saveNewsToDatabase();
        }
    });
}

// 声明私有方法,用于保存新闻到数据库
private void saveNewsToDatabase() {
    // 从文本输入框中获取标题和内容,并去除两端的空格
    String title = editTextTitle.getText().toString().trim();
    String content = editTextContent.getText().toString().trim();
    
    // 获取可写的数据库对象
    SQLiteDatabase db = databaseHelper.getWritableDatabase();
    
    // 创建 ContentValues 对象,用于存储键值对数据
    ContentValues values = new ContentValues();
    // 将标题和内容放入 ContentValues 对象中
    values.put(NewsDatabaseHelper.COLUMN_TITLE, title);
    values.put(NewsDatabaseHelper.COLUMN_CONTENT, content);
    
    // 将数据插入到数据库中,并返回新插入行的 ID
    long newRowId = db.insert(NewsDatabaseHelper.TABLE_NAME, null, values);
}

}

Android 代码详解:使用 SQLite 数据库保存新闻数据

原文地址: https://www.cveoy.top/t/topic/f34r 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录