2017-11-18 257 views
-4

这里已经提出了这个问题,但是我没有解决我的问题。这里是我的代码如何在片段上实现后退按钮按下设备

public class MyOrders extends Fragment { 
View view; 
private MyOrders.OnFragmentInteractionListener mListener; 
FragmentManager fragmentManager; 
Context context; 
public MyOrders(){ 

} 
public static MyOrders newInstance(String param1, String param2) { 
    MyOrders fragment = new MyOrders(); 
    Bundle args = new Bundle(); 
    fragment.setArguments(args); 
    return fragment; 
} 

@Override 
public void onCreate(@Nullable Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);; 
    context = getActivity(); 
    fragment = new MyOrders(); 
} 

@Nullable 
@Override 
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) { 
    view = inflater.inflate(R.layout.myorders, container, false); 
fragmentManager = getFragmentManager(); 
} 
    // TODO: Rename method, update argument and hook method into UI event 
public void onButtonPressed(Uri uri) { 
    if (mListener != null) { 
     mListener.onFragmentInteraction(uri); 
    } 
} 

@Override 
public void onDetach() { 
    super.onDetach(); 
    mListener = null; 
} 

public interface OnFragmentInteractionListener { 
    // TODO: Update argument type and name 
    void onFragmentInteraction(Uri uri); 
} 

} 

我通过新建 - >片段 - >空白片段

提出在Android Studio中该片段在设备背面底部的报刊,控制将转向另一个片段(加载片段由下面的代码)

public void loadFragment(Fragment fragment,String tag, FragmentManager fragmentManager){ 
     android.support.v4.app.FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
     fragmentTransaction.replace(R.id.content, fragment); 
     fragmentTransaction.addToBackStack(tag); 
     fragmentTransaction.commit(); 
    } 

。 请帮我一把。我一整天都试过。

+0

'Fragment'的BackPress就是这样一个**错误的观念**。 BackPress属于容器活动。 –

+0

你可以发布代码 – manjari

+0

我想你可以搜索'android onbackpressed'。询问代码/教程是无关紧要的。 –

回答

1

试试这个代码

添加该代码在你Activity

@Override 

    public void onBackPressed() 
{ 

    int count = getFragmentManager().getBackStackEntryCount(); 

    if (count == 0) { 
     super.onBackPressed(); 
     //additional code 
    } else { 
     getFragmentManager().popBackStack(); 
    } 
} 
+0

'方法不会覆盖方法从它的超类'这是我得到的错误 – manjari

+0

@manjari检查我的更新的答案 – vinay

+0

为后备我们必须控制活动不在片段 – vinay

相关问题