幸运的是,backstack的默认行为不需要我为我的应用程序编写任何特殊情况处理它(虽然我确实想要删除第一个屏幕,这是启动,但我会弄明白的)。
然而,现在我正在启动相机并使用意图映射“传统”方式(作为单独的进程/活动,而不是新的片段/集成样式)通过
Intent intent = new Intent(Android.Content.Intent.ActionView, Uri.Parse(url));
intent.SetClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
StartActivityForResult(intent,(int)ActivityRequestCode.Map);
和
_imageFile = new File(_imageDir, String.Format("attachment_{0}.jpg", Guid.NewGuid()));
Intent intent = new Intent(MediaStore.ActionImageCapture);
intent.PutExtra(MediaStore.ExtraOutput, Uri.FromFile(_imageFile));
StartActivityForResult(intent, (int)ActivityRequestCode.Camera);
我遇到了一些我认为需要进行一些后端封装的情况,所以我很想知道 如果有一些基本的策略。
第1期
当相机返回时(通过用户在相机应用程序中按“完成”),并且控件返回到我的应用程序,并且正在显示包含viewpager的视图,如果用户,程序崩溃(闪烁并重新启动)在相机关闭后过快地滚动寻呼机(仍然需要以受控方式复制并获取日志)。
第2期
如果我启动地图然后使用后退按钮返回我的应用程序,它的当前视图似乎在堆栈上重复。也就是说,在返回我的应用程序后,如果我点击后退按钮,将弹出当前视图(通过“卡片幻灯片”动画“确认)并且该堆栈上的下一个相同视图的副本(所以我基本上必须回击两次才能“超出”视图。
我需要在我的应用程序中构建一些标准的backstack功能来解决这个问题吗?
注意:我已经看到了背板上的超级深度幻灯片(好吧,上半部分),并且在我挖掘它时会发布链接到它,所以我知道它的一般文档。
谢谢。