片段 Android 中的后退按钮 - 相关
Back button in fragment Android-Related
我有一个创建列表视图的片段。单击列表时,将刷新同一个列表,并加载其子元素。谁能告诉我如何启用 android 中的后退按钮来获取父列表?
你可以覆盖你的 activity 的 onBackPressed() 并通过 FragmentManager 获取片段实例,然后做你想做的事。
你必须从 Activity 的 onBackPressed 回调到 Fragment 并检查 Fragment 是否有子元素打开。
活动中
public void onBackPressed()
{
if(!fragment.onBackPressed())//onBackPressed in fragment is your own function
{
super.onBackPressed();
}
}
在片段中
public boolean onBackPressed() //your custom onBackPressed not overrided
{
if(childListOpen)
{
//close the child list
return true;
}
else
{
// whatever to do in back pressed of list
return false;
}
}
为简单起见,在 activity 中定义一个静态变量来跟踪当前可见的片段,例如
public static fragIndex = 0;
然后在您的片段 oncreateView 返回视图之前将其相应地设置为片段。就像在列表视图片段中一样
MainActivity.fragIndex = 0;
以及详细片段
MainActivity.fragIndex = 1;
现在对你的活动 onbackpressed 方法做点赞
if(fragIndex == 0){
//whatever you want to do.
}else if(fragIndex == 1){
// change the fragment back to list view
}
使用方法onResume()
@Override
public void onResume() { // TODO Auto-generated method stub
super.onResume();
}
我有一个创建列表视图的片段。单击列表时,将刷新同一个列表,并加载其子元素。谁能告诉我如何启用 android 中的后退按钮来获取父列表?
你可以覆盖你的 activity 的 onBackPressed() 并通过 FragmentManager 获取片段实例,然后做你想做的事。
你必须从 Activity 的 onBackPressed 回调到 Fragment 并检查 Fragment 是否有子元素打开。
活动中
public void onBackPressed()
{
if(!fragment.onBackPressed())//onBackPressed in fragment is your own function
{
super.onBackPressed();
}
}
在片段中
public boolean onBackPressed() //your custom onBackPressed not overrided
{
if(childListOpen)
{
//close the child list
return true;
}
else
{
// whatever to do in back pressed of list
return false;
}
}
为简单起见,在 activity 中定义一个静态变量来跟踪当前可见的片段,例如
public static fragIndex = 0;
然后在您的片段 oncreateView 返回视图之前将其相应地设置为片段。就像在列表视图片段中一样
MainActivity.fragIndex = 0;
以及详细片段
MainActivity.fragIndex = 1;
现在对你的活动 onbackpressed 方法做点赞
if(fragIndex == 0){
//whatever you want to do.
}else if(fragIndex == 1){
// change the fragment back to list view
}
使用方法onResume()
@Override
public void onResume() { // TODO Auto-generated method stub
super.onResume();
}