Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在加载活动之前显示预加载程序_Android_Performance_Android Layout - Fatal编程技术网

Android 在加载活动之前显示预加载程序

Android 在加载活动之前显示预加载程序,android,performance,android-layout,Android,Performance,Android Layout,我有一个沉重的用户界面,可以延迟应用程序加载。我想在加载活动的UI之前显示预加载程序。请注意,我的ui在xml文件中编辑: 如果要在视图寻呼机中加载10个选项卡,请使用FragmentStatePagerAdapter,它只加载相邻选项卡默认行为 如果指定的重UI只是UI元素,则应用程序在加载时必须冻结。因此,您最好在加载消息时显示一个不带动画的不可取消对话框,并在几分钟后(如200毫秒)加载UI并显式关闭对话框 但是如果沉重的东西不仅仅是UI,可能是一些计算或图像处理,只需在后台线程中执行此操

我有一个沉重的用户界面,可以延迟应用程序加载。我想在加载活动的UI之前显示预加载程序。请注意,我的ui在xml文件中编辑: 如果要在视图寻呼机中加载10个选项卡,请使用FragmentStatePagerAdapter,它只加载相邻选项卡默认行为

如果指定的重UI只是UI元素,则应用程序在加载时必须冻结。因此,您最好在加载消息时显示一个不带动画的不可取消对话框,并在几分钟后(如200毫秒)加载UI并显式关闭对话框


但是如果沉重的东西不仅仅是UI,可能是一些计算或图像处理,只需在后台线程中执行此操作,同时显示有进度的对话框,并在任务完成后取消该对话框。

@Hassan根据我的说法,如果您的应用程序需要一段时间才能呈现第一个屏幕,则单击启动器图标可能会在其间出现黑屏。这需要在应用程序中更正

相反,如果您的应用程序主屏幕需要填充/检索某些资源以有效吸引用户,则您可以执行类似于启动屏幕的操作,在该屏幕中执行所有填充/检索操作,然后将数据传递到繁重的UI。
现在,关于进度条,如果获取的数据很小,您可以提供一个不确定的自定义移动动画,该动画将适合您的应用程序进度条,否则,如果它类似于下载,您可以轻松跟踪其进度并在水平进度条中显示,您当然可以!您正在描述预加载程序。这是一个很好的例子 你必须在问题中添加更多信息才能得到具体的答案,但有几个基本原则

如果你使用一个不显示负载进度的预加载程序,你的生活会变得容易得多,因为一些负载过程的速度是无法测量的

如果它是一个需要花费时间的数据加载,例如调用API,您可能希望在脚本顶部将加载变量设置为true,然后在数据解析后将其设置为false。在您的视图中,有一个隐藏/取消隐藏预加载程序的状态或条件元素

如果大量的图像减慢了页面的速度,您可能希望查看延迟加载,或者使用无限滚动仅在UI需要在屏幕上显示内容时显示内容


这就是我所能提供的所有信息,没有更多关于你到目前为止的代码的信息。希望有帮助

我在我的应用程序中使用了viewpager和一些片段。活动B中有viewpager和许多重片段,在从活动A显示B时是否要显示进度条?是。十个碎片我不想在一个活动中触发所有东西你试过制作进度对话框吗?我不想从web上以编程方式加载某些东西或膨胀某些东西。我的ui是xml文件我的ui是xml文件