java - Android 中的 Activity 启动时如何显示所有数据库记录?

标签 java android mysql android-activity

我有 2 项 Activity 。在第一个中,我有一个按钮。当按下按钮时,会发生两件事。第一个,我在 Web 服务器上的 mysql 数据库中插入一些记录,第二个,我启动一个新 Activity 。在第二个 Activity 中,我只是在 textView 中显示数据库记录。当第二个 Activity 开始时,有时会显示最后插入的记录,有时则不显示。我认为第二个 Activity 的启动速度比记录插入数据库并显示的速度更快。每次第二个 Activity 开始时,我需要更改什么才能显示所有记录?

最佳答案

可以在Activity中的onResume中进行数据库查询

new DataDownloader(this).executeOnExecutor(AsyncTask.SERIAL_EXECUTOR);

在 AsyncTask 中,可以查询所需的数据

public class DataDownloader extends AsyncTask<Void,Void,Boolean>
{

 private ProgressDialog dialog;
public DataDownloader(SplashScreen context){
        this.context=context;

    }
@Override
    protected void onPreExecute() {
        super.onPreExecute();
        try {
            dialog = ProgressDialog.show(context, "Please wait", "Syncing Contact data..");
        }catch(Exception e){
            Log.e(AppConstants.NETLOG, "" + e.toString());
        }
    }
@Override
    protected Boolean doInBackground(Void... params) {
    //Do the required database query
return status;
    }
@Override
    protected void onPostExecute(Boolean aBoolean) {
        super.onPostExecute(aBoolean);
        if(dialog!=null && dialog.isShowing())
        {
            dialog.dismiss();
        }
        if(!aBoolean){
            //Display error
        }else{
            //Process correct data
        }
    }
}

关于java - Android 中的 Activity 启动时如何显示所有数据库记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33871208/

相关文章:

java - eclipse 增量包与 eclipse 运行时

java - 为什么android不希望我proc mounts

android - 库的样式属性没有值,即使它们已明确设置

java - 解密使用 Java AESBouncyCaSTLe 创建的 MySQL 字段

MySQL如何添加超过24的2次:00 hours

java - Hibernate 无法打开连接

java - 如何返回等于带有所有查询参数的被调用端点的字符串

php - Android - 异步任务完成后的下一个 Activity

android - 从您的 Android 应用程序中打开 Facebook native 应用程序

PHP在php中动态生成一个mysql where子句