Android studio 创建一个主线程

  • 法一:最直接的方法
 new Handler().post(new Runnable() {
            @Override
            public void run() {
            //在这里操作主线程的处理
            }
        });
  • 法二:创建MyApplication 继承 Application
import android.app.Application;
import android.os.Handler;
public class MyApplication extends Application {
    private static Handler mMainThreadHandler;
    @Override
    public void onCreate() {
        super.onCreate();
        mMainThreadHandler = new Handler();
    }
    public static Handler getMainThreadHandler(){
        return mMainThreadHandler;
    }
}

注意别忘了在清单文件中注册
在这里插入图片描述

  //调用  
      MyApplication.getMainThreadHandler().post(new Runnable() {
            @Override
            public void run() {
             //在这里操作主线程的处理
            }
        });
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Android Studio 中连接数据库,一般使用 SQLite 数据库。下面是一个简单的示例代码: 1. 创建数据库帮助类 可以通过继承 `SQLiteOpenHelper` 类来创建一个数据库帮助类。该类需要实现两个方法: - `onCreate()`:在数据库第一次创建时调用,一般用于创建表结构等初始化操作。 - `onUpgrade()`:在数据库需要升级时调用,一般用于修改表结构等操作。 示例代码: ```java public class MyDatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "mydatabase.db"; private static final int DATABASE_VERSION = 1; public MyDatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { String sql = "CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)"; db.execSQL(sql); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String sql = "DROP TABLE IF EXISTS user"; db.execSQL(sql); onCreate(db); } } ``` 2. 使用数据库帮助类 创建好数据库帮助类后,可以在 Activity 中使用它来连接数据库,并进行各种操作。 示例代码: ```java public class MainActivity extends AppCompatActivity { private SQLiteDatabase db; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MyDatabaseHelper dbHelper = new MyDatabaseHelper(this); db = dbHelper.getWritableDatabase(); } // 插入数据 private void insertData() { ContentValues values = new ContentValues(); values.put("name", "张三"); values.put("age", 20); db.insert("user", null, values); } // 查询数据 private void queryData() { Cursor cursor = db.query("user", null, null, null, null, null, null); if (cursor != null) { while (cursor.moveToNext()) { int id = cursor.getInt(cursor.getColumnIndex("id")); String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); Log.d("MainActivity", "id=" + id + ", name=" + name + ", age=" + age); } cursor.close(); } } @Override protected void onDestroy() { super.onDestroy(); db.close(); } } ``` 以上就是连接 SQLite 数据库的基本代码,需要注意的是,数据库操作需要在子线程中进行,不能在线程中进行,否则会导致 ANR。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AaVictory.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值