如何在初始化数据库时显示启动屏幕?

2024-04-17

我创建了一个启动画面,效果非常好。现在我想在显示启动屏幕的同时加载数据库,并在数据库完全加载后显示应用程序 UI。
我有以下代码来执行此操作,对吗?

public class Splash extends Activity{

@Override
protected void onCreate(Bundle bundle) {
    super.onCreate(bundle);
    new LoadDatabase().execute();
}

@Override
protected void onPause() {
    super.onPause();
    finish();
}

// Load DB
protected class LoadDatabase extends AsyncTask<Context, Integer, String> 
{ 
     @Override 
     protected String doInBackground( Context... params ) { 
         try {
            new DatabaseHelper(getApplicationContext()).initializeDatabase();
        } catch (IOException e) {
            e.printStackTrace();
        }
         return "";
     } 

     @Override 
     protected void onPreExecute() { 
        super.onPreExecute(); 
        setContentView(R.layout.splash);
     } 

     @Override
    protected void onPostExecute(String result) {           
        super.onPostExecute(result);
         Intent openMain = new Intent("com.nepways.MAIN"); 
         startActivity(openMain); 
    }
}

}


有什么好的例子或者建议吗?这个你能帮我吗。


您可以通过异步或线程和处理程序执行此操作

protected class MyTask extends AsyncTask<Context, Integer, String> 
{ 
     @Override 
     protected String doInBackground( Context... params ) 
     { 
      // write ur database functionality 
     } 

     // -- gets called just before thread begins 
     @Override 
     protected void onPreExecute() 
     { 
        // u may show ur progressbar or spalsh screen
        super.onPreExecute(); 

     } 


     // -- called as soon as doInBackground method completes 
     @Override 
     protected void onPostExecute() 
     { 
       super.onPostExecute(result); 
      // Intent openMain = new Intent("com.nepways.MAIN"); 
            startActivity(openMain); 
     } 
} 

试试这个...也许会对你有帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在初始化数据库时显示启动屏幕? 的相关文章

  • 查看寻呼机 - 使用静态变量以编程方式滑动到下一页

    我想在我的 ViewPager 中以编程方式制作幻灯片 我的问题是 滑动事件是由放置在 ViewPager 保存的片段内部的按钮调用的 我知道代码 viewpager setCurrentItem int index 现在我的想法是使 Vi
  • 为什么 cordova.file.documentsDirectory 为空?

    我正在尝试使用 cordova plugin file transfer 在http ngcordova com docs plugins fileTransfer http ngcordova com docs plugins fileT
  • BLE 外设支持 Android-L 示例 [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我希望有一个适用于 Android L 的 BLE 外设模式的示例 我的代码给了我奇怪的错误 即广告商太多 这没有任何意
  • startActivity overridePendingTransition 只显示进入动画

    基本上 我遇到的问题是只显示输入幻灯片动画 调用 Activity 不会产生动画 startActivity intent overridePendingTransition R anim right in partly R anim le
  • Android Manifest 自动生成无效权限

    我不小心在 Android 清单中输入了无效的权限名称 并且无法将其删除 这是我的清单代码
  • OPENGL ES 不工作:无当前上下文

    我尝试了 OpenGL ES2 for Android 一书中所示的程序 但它不起作用 我已经在Odroid E 三星s3 三星y 三星star上进行了测试 the gl version suported returns 2 but i g
  • BluetoothAdapter.getDefaultAdapter() 不返回 null

    这是我的第一篇文章 所以如果我做了一些愚蠢的事情 请告诉我 这个问题可能看起来与其他帖子类似 但或多或 少与我所看到的所有内容相反 关于该项目的事情 我正在开发 android 4 0 4 4 应用程序 我正在使用蓝牙 我正在运行 andr
  • 从 BroadcastReceiver 获取方法来更新 UI

    我正在尝试根据变量的变化更新用户界面BroadcastReceiver 因此 我需要调用一个扩展类的方法 以获取我提到的变量 BroadcastReceiver in MainActivity取决于但我无法以任何方式获得真正的返回值 扩展的
  • FLAG_ACTIVITY_REORDER_TO_FRONT 被忽略

    我有一个包含项目列表的 FragmentActivity 当应用程序处于后台时 可以推送该项目列表 发生这种情况时 我想创建一个状态栏通知并提醒用户更新 当用户单击通知时 活动应重新排序到前面并显示在屏幕上 同时在列表底部显示新项目 所以我
  • Android 中有没有办法获取 SD 卡大小?

    欢迎大家 我已经在 Stackoverflow 和 google 上尝试过与此相关的每个问题 但没有一个有效 我已经尝试过类似下一个链接的操作 但它返回的内容与内部存储相同 如何获取外部存储 SD 卡的大小 带安装的 SD 卡 https
  • 如何更改对话框片段内的片段

    我想做一个空的DialogFragment with a LinearLayout然后更改里面的片段LinearLayout 例如 第一个片段是 3 个按钮 facebook google 电子邮件登录 的登录 当有人按下电子邮件时 第 2
  • 如何使用 Swipe 视图实现 Android TabLayout 设计支持库

    我将使用 android TabLayout 设计支持库 但我不知道如何使用滑动视图 这是我的代码 XML
  • 我应该选择的最低 SDK 版本是多少? (截至2018年11月)

    据我所知 android studio 中默认的最小 SDK 设置是 15 我读到我应该增加它 因为没有多少人 或者可能没有 仍在使用该 android 版本 另外 我计划使用 android studio 中的一些新功能 这些功能仅适用于
  • Spotify 登录错误 INVALID_CLIENT:无效的重定向 URI android

    我正在制作一个包含 Spotify 集成的应用程序 我点击了此链接https developer spotify com technologies spotify android sdk tutorial https developer s
  • 如何在Android网格视图中设置单元格大小?

    我正在尝试为应用程序制作一个带有大图标的网格视图 但我找不到任何有关修改 Android 上网格布局上的单元格大小的教程 有人可以给我一个例子或相关链接吗 Thanks 就像另一个一样适配器视图 http developer android
  • 使用后退按钮启动 Activity

    我正在 Android 中开发一个应用程序 我正在寻找解决方案 有一个活动 例如 A1 通过单击按钮 用户可以转到另一个活动 例如 A2 现在 一旦用户完成 A2 活动 他就会单击后退按钮 返回到上一个活动 A1 这是众所周知的事实 A1此
  • 如何在 onDraw() 方法中定义与像素无关的高度

    我扩展了 View 来构建自定义小部件 我想用独立的像素单位定义小部件的高度 我认为可以通过将像素密度乘以所需的高度来完成 但我不知道该怎么做 到目前为止我所拥有的 最小化 public class Timeline extends Vie
  • 改造方法调用可能会产生“java.lang.NullPointerException”

    使用 Retrofit 2 3 0 我在 Android Studio 中收到以下消息 有关如何删除此 IDE 错误消息的任何建议 谢谢 来自Response文档 http square github io retrofit 2 x ret
  • Android Jasper 报告

    Jasper Reporting 可以集成到 Android 应用程序中吗 我正在尝试从 jrxml 文件生成 PDF CSV 文本和 XLS 报告 但是 我没有看到 Android SDK 支持 net sf jasperreports
  • 查询联系人 - 有时返回空游标

    我正在尝试查询联系人的显示名称 Override public void onActivityResult int requestCode int resultCode Intent data switch requestCode case

随机推荐

  • 如何更改列表中的ListStyle

    在 SwiftUI 中List似乎有一个名为ListStyle 如何更改列表的样式 struct ListView View var body some View NavigationView List Item create identi
  • jQuery document.ready 与 pageLoad

    我从另一位开发人员那里挑选了一个现有项目 我在代码中注意到他们正在三个不同的事件处理程序中执行 js 代码 function pageLoad execute code document ready function execute cod
  • ASP.NET MVC 中 ViewModel 的验证

    大多数关于如何在 ASP NET MVC 中实现验证的技巧似乎都以模型为中心 在模型和控制器之间构建服务层 或者使用验证属性装饰模型的属性 在我的应用程序中 我使用 ViewModel 进行控制器和视图之间的所有通信 我的登录页面有一个名为
  • 用glib进行垃圾收集?

    我想将垃圾收集语言 具体来说 它使用古老的 Boehm libgc 与 glib 系列 API 接口 glib 和 gobject 在内部使用引用计数来管理对象生命周期 包装这些的正常方法是使用垃圾收集的对等对象 该对象保存对 glib 对
  • 有“进度按钮”吗?

    我想要一个具有双重功能的按钮作为进度条 例如 随着任务的进展 按钮会填充绿色背景 我知道我可以创建自己的 但如果有现成的东西 我很乐意使用它 有谁知道适合该要求的免费或商业组件吗 我希望它能在 Delphi 2007 中工作 但如果它仅在
  • glBitmap 问题

    我正在使用一些遗留代码来工作 它使用 glBitmap 调用来绘制位图图标 我的问题是 一旦你一次绘制大约 1000 个图标 它就会变得相当慢 它会减慢到大约 1 到 2 秒的刷新率 我想看看是否可以让它更快 首先我应该描述当前代码是如何工
  • 长度为 k 的非重叠子串的随机采样

    给定一个长度的字符串n 我将如何 伪 随机采样m大小子串k这样采样的子串就不会重叠 我的大部分脚本编写经验都是使用 Perl 但任何通用语言的易于运行的解决方案就足够了 如果输入中不能出现某个字符 例如X just my size 20 m
  • 如何删除损坏的图像框?

    我正在尝试构建一个电子邮件模板 其中我必须向不同的邮件客户端 例如 Outlook thunderbird 显示一些图像 现在的问题是 当这些客户端不允许显示图像时 会显示我不想显示的损坏的图像框 我也参考过 参考链接1 https i s
  • 如何将嵌套字典转换为带有键顺序的列表

    我想从嵌套字典中创建一个列表 Name 20 Paul Merrill 21 Brynne S Barr Phone 20 1 313 739 3854 21 939 4818 Address 20 916 8087 Vehicula Rd
  • 调用未定义的方法 mysqli_result::fetch()

    我能够从中获取数据get result 使用任何fetch assoc fetch all 和fetch row 但是当我尝试使用简单的fetch 只是 我收到这个错误 未捕获的错误 调用未定义的方法 mysqli result fetch
  • 应用部分比 Monad 部分可以更好优化的 monad 示例

    在一次讨论中我听说Applicative一些解析器的接口的实现方式不同 但比它们的更有效Monad界面 原因是与Applicative在运行整个有效计算之前 我们提前知道所有 效果 对于 monad 效果可能取决于计算期间的值 因此这种优化
  • Apache Beam:DoFn 与 PTransform

    Both DoFn and PTransform是一种定义操作的方法PCollection 我们如何知道何时使用哪个 理解它的一个简单方法是类比map f 对于列表 高阶函数map将函数应用于列表的每个元素 返回结果的新列表 您可以将其称为
  • 每n秒运行某些代码[重复]

    这个问题在这里已经有答案了 有没有办法 例如打印Hello World 每n秒 例如 程序会执行我拥有的任何代码 然后一旦过了 5 秒 time sleep 它将执行该代码 我会用它来更新文件 而不是打印 Hello World 例如 st
  • 在 SQL Server 2005 存储过程中使用 .NET Framework 3.5

    我有一个 SQL Server 2005 服务器 我想在其上运行 Net CLR 存储过程 但是 我想使用 NET Framework 3 5 如果我现在尝试这个 我会收到以下错误 Error Assembly system core ve
  • 在 C++ 程序中包含 C 头文件

    我有一个 C 程序 cpp 在其中我希望使用 C 头文件中存在的一些函数 例如 stdio h conio h stdlib h graphics h devices h 等 我可以将 stdio h 库包含在我的 cpp 文件中 如下所示
  • 冲突:被其他getUpdates请求终止;确保只有一个机器人实例正在运行

    有人遇到这样的错误吗 我该如何修复它们 2021 11 07 08 29 38 643 telegram ext updater ERROR Error while getting Updates Conflict terminated b
  • 如何在角度指令中绑定布尔值?

    我想将一些布尔属性绑定 设置到指令 但我真的不知道如何做到这一点并实现以下行为 想象一下 我想为结构设置一个标志 假设列表是否可折叠 我有以下 HTML 代码
  • 源操作数和目标操作数是否需要相同大小?

    我刚刚尝试了这个问题 要求你解释一下代码行有什么问题 movl eax rdx 解决方案表明目标操作数的大小错误 仅当从较大尺寸变为较小尺寸时才 非法 还是源操作数和目标操作数对于所有指令 或至少 mov 类类型 必须具有相同的尺寸 是的
  • POV-Ray:在脚本中设置输出分辨率或宽度/高度比

    我有一个代码可以生成一堆 pov使用 POV Ray 进行可视化的文件 不幸的是 它们具有不同的纵横比 宽度 高度 该信息以向上 向右向量的形式存在于脚本中 但是 当我渲染没有任何额外参数的脚本时 即通过povray test pov PO
  • 如何在初始化数据库时显示启动屏幕?

    我创建了一个启动画面 效果非常好 现在我想在显示启动屏幕的同时加载数据库 并在数据库完全加载后显示应用程序 UI 我有以下代码来执行此操作 对吗 public class Splash extends Activity Override p