我正在创建一款 Android 应用程序,需要添加返回导航功能,这样当用户点击动作栏的主页按钮时,用户将回退到应用程序的前一个屏幕。但是,动作栏主页按钮不响应单击事件。以下是我的代码:
public static class PlaceholderFragment extends Fragment {
public PlaceholderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
ActionBar actionBar = getActivity().getActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
return rootView;
} }
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.home:
Toast.makeText(getApplication(), "Back", Toast.LENGTH_LONG).show();
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
Activity
是继承自android.support.v7.app.ActionBarActivity
还是仅继承自android.app.Activity
?如果只继承自Activity
,则应该调用getActionBar()
;如果继承自ActionBarActivity
,则应该调用getSupportActionBar()
。 - EdmDroidcase R.id.home
中,实际上应该是android.R.id.home
。 - EdmDroid