Chr*_*nty 2 android android-fragments mvvmcross xamarin
我正在尝试找到一种方法来获取我正在处理的Android应用程序上当前显示的片段.我有一个启动视图加载片段,我需要做的是当用户点击后退按钮时显示弹出消息,但仅当使用点击某个片段的后退按钮时.例如:
片段A>导航到..>片段B>导航到...>片段C
如果用户单击片段C中的后退按钮,则不显示任何内容,并且用户按预期返回到片段B. 但是当用户点击片段B时,会显示一个弹出窗口,要求用户在允许继续回到片段A之前确认该操作,我希望这是有道理的.
我知道OnBackPressed(),我可以覆盖一个视图,但我不能在片段中触摸它.任何指针将不胜感激.
小智 6
嗨,当你添加一个新的交易替换使用密钥标签
var ft = FragmentManager.BeginTransaction();
ft.Replace(Resource.Id.details, details, "FRAGMENT1");
Run Code Online (Sandbox Code Playgroud)
如果你需要检查指定的片段是否可见
Fragment myFragment = (Fragment)FragmentManager.FindFragmentByTag("FRAGMENT1");
if (myFragment.IsVisible){
//your code here
}
Run Code Online (Sandbox Code Playgroud)
或者如果您需要获取并检查片段管理器中的所有片段,您可以使用它
var fragmentsarray = FragmentManager.Fragments;
foreach(var fragment in fragmentsarray)
{
if (fragment.IsVisible) {
//put the code to use and get the tag to identify the current Fragment
string tag = fragment.Tag;
}
}
Run Code Online (Sandbox Code Playgroud)
如果需要更多指定片段信息,您可以在http://developer.android.com/reference/android/app/Fragment.html查看Android文档
希望它能帮到你
| 归档时间: |
|
| 查看次数: |
3345 次 |
| 最近记录: |