这就是我的问题。我需要自定义操作栏,以便操作栏中的 Logo 返回 Activity ,并通过按 Logo 附近打开下拉列表以更改 View 。我已经寻找解决方案几个小时但一无所获。这正是我想要得到的:
http://blog.mengto.com/wp-content/uploads/2013/02/android-actionbar.png
请帮助我!谢谢
import android.app.Activity;
public class Travel extends Activity {
String[] actions = new String[] { "Gallery View", "Grid View" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_travel);
// action bar back button
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
/** Create an array adapter to populate dropdownlist */
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
getBaseContext(),
android.R.id.home, actions); //here i am trying to put the home button as the button, but basically i need only the logo to make the back action
/** Enabling dropdown list navigation for the action bar */
getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
/** Defining Navigation listener */
ActionBar.OnNavigationListener navigationListener = new OnNavigationListener() {
@Override
public boolean onNavigationItemSelected(int itemPosition,
long itemId) {
Toast.makeText(getBaseContext(),
"This is the: " + actions[itemPosition],
Toast.LENGTH_SHORT).show();
return false;
}
};
/**
* Setting dropdown items and item navigation listener for the actionbar
*
* HERE IS WHERE THE CRASH OCCURS
*/
//getActionBar().setListNavigationCallbacks(adapter, navigationListener);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.travel, menu);
return true;
}
}
最佳答案
关于java - Android Actionbar 具有后退导航和下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21062894/