Android 从活动回到片段

Android 从活动回到片段,android,android-fragments,android-tablayout,Android,Android Fragments,Android Tablayout,我在活动中有一个TabLayout和ViewPager。我使用单个片段来创建标签页。我正在从那个片段开始一个活动。当我点击手机的后退按钮返回到TabLayout活动(带有片段)时,它工作正常。但当我使用工具栏的后退按钮时,TabLayout活动并没有打开,而是显示一个空白页面。当我现在按下手机的后退按钮时,只显示TabLayout活动。我能做些什么来解决这个问题吗 公共类ProdDetailsActivity扩展了AppCompatActivity{ @凌驾 创建时的公共void(Bundle

我在活动中有一个TabLayout和ViewPager。我使用单个片段来创建标签页。我正在从那个片段开始一个活动。当我点击手机的后退按钮返回到TabLayout活动(带有片段)时,它工作正常。但当我使用工具栏的后退按钮时,TabLayout活动并没有打开,而是显示一个空白页面。当我现在按下手机的后退按钮时,只显示TabLayout活动。我能做些什么来解决这个问题吗

公共类ProdDetailsActivity扩展了AppCompatActivity{
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u proddetails);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
设置支持操作栏(工具栏);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
@凌驾
公共布尔值OnOptionItemSelected(MenuItem MenuItem){
开关(menuItem.getItemId()){
案例android.R.id.home:
//这不起作用
onBackPressed();
完成();
}
返回super.onOptionsItemSelected(菜单项);
}
}
//TabLayout活动中的片段
公共类子片段扩展了片段{
私有文本视图emptyText;
私有列表视图列表视图;
private ArrayList mListData=new ArrayList();
专用自定义列表适配器;
专用连接检测器cd;
公共字符串用户标识;
SharedReferences SharedReferences;
私营部门;
私有静态最终整数RQST_ONE=1;
私有静态最终int RQST_TWO=2;
公共静态子标签newInstance(int索引){
SubCatFrag myFragment=新的SubCatFrag();
Bundle args=新Bundle();
参数putInt(“索引”,索引);
myFragment.setArguments(args);
返回(myFragment);
}
@凌驾
创建时的公共void(@Nullable Bundle savedInstanceState){
super.onCreate(savedInstanceState);
设置选项菜单(真);
}
@可空
@凌驾
创建视图时的公共视图(LayoutFlater充气机、@Nullable ViewGroup容器、@Nullable Bundle savedInstanceState){
返回充气机。充气(右布局。副标签,容器,假);
}
@凌驾
已创建视图上的公共void(视图,@Nullable Bundle savedInstanceState){
super.onViewCreated(视图,savedInstanceState);
((AppCompatActivity)getActivity()).getSupportActionBar().setTitle(“列出产品”);
emptyText=(TextView)view.findViewById(R.id.emptyText);
listView=(listView)view.findViewById(R.id.list);
pd=新建进度对话框(getActivity());
cd=新的ConnectionDetector(getActivity());
if(cd.isConnectingToInternet()){
fetchDetails();
}否则{
Toast.makeText(getActivity(),“没有可用的Internet”,Toast.LENGTH_SHORT.show();
}
adapter=新的CustomListAdapter(getActivity(),R.layout.productlistrowlayout,mListData);
setAdapter(适配器);
setEmptyView(emptyText);
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
字符串prod=mListData.get(position).getProd_id();
字符串title=mListData.get(position.getTitle();
Intent Intent=new Intent(getActivity(),ProdDetailsActivity.class);
意向。额外(“prd_id”,产品);
意向。额外(“标题”,标题);
startActivityForResult(意向书,第二部分);
}
});
}
私有void fetchDetails(){
pd.setMessage(“请稍候”);
pd.show();
SharedReferences=getActivity().GetSharedReferences(“MyPREFERENCES”,Context.MODE\u PRIVATE);
userid=SharedReferences.getString(“userid”,即“”);
System.out.println(“usersam”+“”+userid);
如果(mListData!=null)mListData.clear();
StringRequest StringRequest=新的StringRequest(Request.Method.POST、URLUtil.FETCHLIST、,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
pd.解散();
试一试{
JSONObject obj1=新JSONObject(响应);
JSONArray JSONArray=obj1.getJSONArray(“所有产品”);

对于(int i=0;i请尝试此代码,而不是onOptions ItemSelected…..Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar); 设置支持操作栏(工具栏)


请尝试此代码,而不是OnOptions ItemSelected…..Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar); 设置支持操作栏(工具栏)


在onCreate()中编写以下代码:

并在类中添加以下代码:

  @Override
public void onBackPressed() {
        Intent prev = new Intent(getApplicationContext(),PreviousActivity.class);
        startActivity(prev);
    finish();
}

在onCreate()中编写以下代码:

并在类中添加以下代码:

  @Override
public void onBackPressed() {
        Intent prev = new Intent(getApplicationContext(),PreviousActivity.class);
        startActivity(prev);
    finish();
}
  @Override
public void onBackPressed() {
        Intent prev = new Intent(getApplicationContext(),PreviousActivity.class);
        startActivity(prev);
    finish();
}