我的步骤是什么? 1.在Activity中,intent方法用于显示图像库 2.然后从图像库中选择一个图像 3.然后在Activity中自动调用onActivityResult方法 4.在onActivityResult
中执行5秒UI任务我的问题是: 在图像库消失之前完成从图像库中选择图像后,将有近5秒的滞留/暂停。
我的问题: 拥有这种劫持是一种糟糕的用户体验。有没有办法先关闭图像库然后执行onActivityResult?
由于
答案 0 :(得分:0)
实际上,有一些方法可以解决您的问题。
1.使用处理程序并在延迟后执行耗时的工作,将延迟设置为1000ms。然后你可以先看到画廊关闭。
2.使用以下代码制作图库选择片段
String[] projection = new String[] { MediaStore.Images.Thumbnails._ID, MediaStore.Images.Media.BUCKET_DISPLAY_NAME, MediaStore.Images.Media.BUCKET_ID, "COUNT(*) AS " + CALLS_COUNT };
String selection = "1=1) GROUP BY (" + MediaStore.Images.Media.BUCKET_ID;
cursor = getContext().getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, selection, null, null);
然后你可以先弹出片段。
3. 实际上,你应该在一个线程中做一个耗时的工作,永远不要阻止UI线程!