以下是一个简单的布局文件和 Activity 文件的示例,用于将新闻保存到 SQLite 数据库。

布局文件 (activity_main.xml):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity">

    <EditText
        android:id="@+id/editTextTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Enter news title" />

    <EditText
        android:id="@+id/editTextContent"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editTextTitle"
        android:hint="Enter news content" />

    <Button
        android:id="@+id/buttonSave"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editTextContent"
        android:layout_centerHorizontal="true"
        android:text="Save" />

</RelativeLayout>

Activity 文件 (MainActivity.java):

import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

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('NewsDB', MODE_PRIVATE, null);
        database.execSQL("CREATE TABLE IF NOT EXISTS news (id INTEGER PRIMARY KEY AUTOINCREMENT, title VARCHAR, content VARCHAR)");

        // 保存按钮点击事件
        buttonSave.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String title = editTextTitle.getText().toString().trim();
                String content = editTextContent.getText().toString().trim();

                if (title.isEmpty() || content.isEmpty()) {
                    Toast.makeText(MainActivity.this, 'Please enter title and content', Toast.LENGTH_SHORT).show();
                } else {
                    // 插入新闻到数据库
                    ContentValues values = new ContentValues();
                    values.put('title', title);
                    values.put('content', content);
                    database.insert('news', null, values);

                    Toast.makeText(MainActivity.this, 'News saved successfully', Toast.LENGTH_SHORT).show();

                    // 清空输入框
                    editTextTitle.setText("");
                    editTextContent.setText("");
                }
            }
        });
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        // 关闭数据库连接
        database.close();
    }
}

在这个示例中,布局文件包含了一个标题输入框 (EditText)、内容输入框 (EditText) 和保存按钮 (Button)。在 Activity 文件中,我们首先初始化视图,并创建或打开名为 'NewsDB' 的 SQLite 数据库。然后,我们设置保存按钮的点击事件,当点击按钮时,将输入的标题和内容插入到名为 'news' 的数据库表中。最后,在 Activity 销毁时关闭数据库连接。

Android 移动应用开发:使用 SQLite 数据库保存新闻

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

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