Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 自定义ActionBar后退单击不起作用_Java_Android_Android Actionbar_Back - Fatal编程技术网

Java 自定义ActionBar后退单击不起作用

Java 自定义ActionBar后退单击不起作用,java,android,android-actionbar,back,Java,Android,Android Actionbar,Back,我在Eclipse中创建了一个android应用程序。我尝试创建自定义操作栏,并使用setDisplayShowHomeEnabledfromgetActionbar方法实际检索图标。然后我将图标设置为某种背向箭头图像,使其看起来更像背向箭头。我正在使用选项ItemSelected单击自定义操作栏中的“后退”按钮,但对我无效。带android.R.id.home的开关盒 在FragmentActivity中自定义操作栏: getActionBar().setDisplayOptions(Acti

我在Eclipse中创建了一个android应用程序。我尝试创建自定义操作栏,并使用setDisplayShowHomeEnabledfromgetActionbar方法实际检索图标。然后我将图标设置为某种背向箭头图像,使其看起来更像背向箭头。我正在使用选项ItemSelected单击自定义操作栏中的“后退”按钮,但对我无效。带android.R.id.home的开关盒

在FragmentActivity中自定义操作栏:

getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getActionBar().setCustomView(R.layout.actionbar);
getActivity().getActionBar().setDisplayHomeAsUpEnabled(false);
getActivity().getActionBar().setDisplayShowHomeEnabled(true);
getActivity().getActionBar().setHomeButtonEnabled(true);
getActivity().getActionBar().setIcon(getResources().getDrawable(R.drawable.left_back));

switch(item.getItemId()){
  case android.R.id.home:
       return true;
}
片段中的BackButton操作栏:

getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getActionBar().setCustomView(R.layout.actionbar);
getActivity().getActionBar().setDisplayHomeAsUpEnabled(false);
getActivity().getActionBar().setDisplayShowHomeEnabled(true);
getActivity().getActionBar().setHomeButtonEnabled(true);
getActivity().getActionBar().setIcon(getResources().getDrawable(R.drawable.left_back));

switch(item.getItemId()){
  case android.R.id.home:
       return true;
}

请像这样更改代码

   switch(item.getItemId()){
      case android.R.id.home:
           finish();
           return true;
    }

如果您不想返回到上一个活动,可以调用onBackPressed函数返回,或者弹出backbackback片段,无论您要查找哪个。