标签:android c style class blog code
ActionBar,顾名思义,小伙伴们,你们想到了什么呢?
嘿嘿,其实就是一个可以代替以前类似于iPhone手机导航栏效果的title在Android手机界面的位置的一种bar的设计!
有几个事注意点哦!
不能设置界面全局和没有标题哦!这样的话,actiobar找不到自己生存的空间,就会死掉。
ActionBar可以自定义,也可以召唤Android里面自带的ActionBar。自定义的肯定要好多咯,不管是位置还是其他的,用着都还好啦!不过,原生的也不错。
这里是自己写的一个简单的Actionbar,
public void createAction() { // to create a SpinnerAdapter SpinnerAdapter adapter = ArrayAdapter.createFromResource(this, R.array.style_choice, android.R.layout.simple_spinner_dropdown_item); android.app.ActionBar actionBar = getActionBar(); // to set the style actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); Resources r = getResources(); Drawable myDrawable = r.getDrawable(R.drawable.gradient_header); actionBar.setBackgroundDrawable(myDrawable); // to set the mode NAVIGATION_MODE_LIST actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); // to add a listener actionBar.setListNavigationCallbacks(adapter, new DropDownListenser()); } /** * 实现 ActionBar.OnNavigationListener接口 */ class DropDownListenser implements OnNavigationListener { // 得到和SpinnerAdapter里一致的字符数组 String[] listNames = getResources() .getStringArray(R.array.style_choice); /* 当选择下拉菜单项的时候,将Activity中的内容置换为对应的Fragment */ public boolean onNavigationItemSelected(int itemPosition, long itemId) { if (itemPosition == 1) { pager.edit().putString("name", "古典样式").commit(); Intent intent = new Intent().setClass(MainHomeActivity.this, ClassicalMainActivity.class); startActivity(intent); finish(); } else { pager.edit().putString("name", "现代样式").commit(); } return true; } }
通过点击actionbar里面的内容,然后来判断页面的跳转也是可以的哦!然后也可以用一个ActionBar管住所有的应用界面哦!
标签:android c style class blog code
原文地址:http://www.cnblogs.com/Catherine-Brain/p/3760630.html