码迷,mamicode.com
首页 > 移动开发 > 详细

Android中ActionBar以及menu的代码设置样式

时间:2015-07-20 16:17:46      阅读:382      评论:0      收藏:0      [点我收藏+]

标签:android   android开发   

AndroidActionBar以及menu的代码样式如何设置?今天麦子学院android开发老师主要介绍Android中ActionBar以及menu的代码设置样式,,有需求的朋友可以参阅下

menu有些xml代码

http://schemas.android.com/apk/res/android">

<="" div="">

android:title="查找1"

android:orderInCategory="100"

android:showAsAction="always"/>

<="" div="">

android:actionViewClass="android.widget.SearchView"

android:showAsAction="ifRoom|collapseActionView"

android:orderInCategory="100"

android:title="查找2"/>

<="" div="">

android:title="共享"

android:orderInCategory="100"

android:icon="@drawable/ic_action_favor_normal"

android:showAsAction="never"/>

<="" div="">

android:title="保藏"

android:orderInCategory="100"

android:showAsAction="never"/>

<="" div="">

android:title="字体大小"

android:orderInCategory="100"

android:showAsAction="never"/>

Menuoverflower菜单图标显现完成【重写onMenuOpened办法,使用反射原理】

/**

* 显现overflower菜单图标

*/

@Override

publicbooleanonMenuOpened(intfeatureId, Menu menu) {

if(featureId == Window.FEATURE_ACTION_BAR && menu !=null) {

if(menu.getClass().getSimpleName().equals("MenuBuilder")) {

try{

Method m = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);

m.setAccessible(true);

m.invoke(menu,true);

}catch(Exception e) {

}

}

}

returnsuper.onMenuOpened(featureId, menu);

}

针对Menu菜单中选项的事情监听操作

/**

* menu菜单点击操作的监听事情

*/

@Override

publicbooleanonOptionsItemSelected(MenuItem item) {

switch(item.getItemId()){

caseandroid.R.id.home:

//finish();

super.onBackPressed();

break;

caseR.id.action_add:

Toast.makeText(this,"增加", Toast.LENGTH_SHORT).show();

break;

}

returnsuper.onOptionsItemSelected(item);

}

自定义ActionBar

/**

* 初始化 ActionBar内容

* */

privateActionBar actionBar;

privatevoidinitActionBar(){

actionBar=super.getActionBar();

actionBar.show();

//显现Home区域

actionBar.setDisplayShowHomeEnabled(true);

//设置home区域回退按钮

actionBar.setDisplayHomeAsUpEnabled(true);

actionBar.setHomeAsUpIndicator(R.drawable.back_move_details_normal);

//不显现Home区域标题

actionBar.setDisplayShowTitleEnabled(true);//

actionBar.setTitle("新闻");//设置title

//不显现Logo图像

actionBar.setDisplayUseLogoEnabled(false);//

//去掉home区域的Icon图标【将icon色彩设置为通明】

Drawable colorDrawable=new

ColorDrawable(android.R.color.transparent);

actionBar.setIcon(colorDrawable);

//自定义区域

actionBar.setDisplayShowCustomEnabled(true);

TextView tvTitle=newTextView(this);//this,当时承载的

tvTitle.setText("新闻信息");//tvTitle.setId();

tvTitle.setTextSize(25);

intcolorVal=getResources().getColor(R.color.white);

tvTitle.setTextColor(colorVal);//tvTitle.setTextColor(Color.WHITE);

tvTitle.setGravity(Gravity.CENTER);

LayoutParams layoutParams=

newLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);

actionBar.setCustomView(tvTitle,layoutParams);

}

完成作用:

关于android app开发实战教程请前往:http://www.maiziedu.com/course/android/

 

 

 

 

Android中ActionBar以及menu的代码设置样式

标签:android   android开发   

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
麦子学院
加入时间:2015-07-08
  关注此人  发短消息
文章分类
麦子学院”关注的人------(0
麦子学院”的粉丝们------(0
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!