Android 3.0及以上已经有了ActionBar的API,可以通过引入support package在3.0以下的平台引用这些API,但这儿呢,完全自定义一个ActionBar,不用引入额外jar...match_parent" android:layout_height="match_parent" android:orientation="vertical" > <com.leaf.actionbar.ActionBar...attr/gdActionBarBackground" bar:type="normal" bar:title="Test ActionBar" /> 这个自定义...title就是actionbar的上的标题;type是区分这个actionbar的上左边item的布局,有三种类型,一种是normal:左边是一个显示主页的imagebutton和显示title的textview.../> 不加这句会报错的,这个theme继承自parent="android:Theme",里面有些自定义的
本例中主要是如何创建自定义的 ActionBar。 ? 观察上图的,当切换界面时,每个界面的顶部最多只有两个图标,而且有4个界面具有类似特性。所以可以考虑通过自定义控件来创建UI模板。...本例可以简单的创建一个 TopBar 来继承 RelativeLayout,并在 values 文件下新建一个 attrs.xml 布局文件,该文件用于定义 ActionBar 的属性。...,能够很好的辨认出自定义的属性属于谁,属于哪个地方的自定义。...当然也可以不用和继承自 RelativeLayout 的类名相同;由于 ActionBar 最多时只有 2 张图片,不需要其他属性(如果想在点击图标时改变图颜色等,还可以定义 format 的 color...创建一个只有两张图片的布局文件,这样做的好处是在自定义控件的类中可以减少代码量,不必在该类中创建 ImageView ,也能更好的让 xml 完成 UI 界面设置,而 Java 程序则专门负责业务逻辑。
:layout_height="wrap_content" android:layout_width="match_parent" /> 然后修改该 Activity 的样式,禁用其 ActionBar...>false true 最后再 Activity 代码中设置该 Toolbar 为 ActionBar...Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); 至此,一个简单的自定义 ActionBar...public void onClick(View v) { // TODO } }); 如果想 修改标题样式,如改成居中,需要清空默认标题,并添加自定义标题...findViewById(R.id.toolbar); toolbar.setTitle(""); setSupportActionBar(toolbar); 如果想修改右侧菜单项,可以修改 menu.xml 同 ActionBar
所以,为你的activity添加actionbar,只需简单地设置属性为11或者更大。 常用操作: 搜索 Actionbar允许你为当前上下文中最重要的操作添加按钮。...(V7、V4只是功能功能不一样,没有升级的说法,要兼容低版本就要全部导V7的包,另外需要自定义命名空间) 2 实现自定义主题...(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); Tab tab1=actionBar.newTab().setText...上面 ActionBar actionBar = getSupportActionBar();//如果是高版本直接getActionBar actionBar.setDisplayHomeAsUpEnabled
所以,为你的activity添加actionbar,只需简单地设置属性为11或者更大。 常用操作: 搜索 Actionbar允许你为当前上下文中最重要的操作添加按钮。...(V7、V4只是功能功能不一样,没有升级的说法,要兼容低版本就要全部导V7的包,另外需要自定义命名空间) 2 实现自定义主题...(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); Tab tab1=actionBar.newTab().setText(...上面 ActionBar actionBar = getSupportActionBar();//如果是高版本直接getActionBar actionBar.setDisplayHomeAsUpEnabled
近期在项目中大量使用actionbar,所以把自己定义的一些属性总结一下。...效果例如以下: 1、自己定义actionbar 在theme的style中设置 @style/CustomActionBar...-- actionbar样式 --> <...自己定义返回button图标 @drawable/navbar_back 3、自己定义标题样式 这个须要设置actionbar...OverflowButtonStyle @drawable/actionbar_add_icon
观察上面的main.xml,你会发现里面有一个自定义的Action Provider,叫作PlusActionProvider。... }); } @Override public boolean hasSubMenu() { return true; } } 自定义...现在我们已经把ActionBar的界面都实现好了,但是如果你现在运行一下会发现,效果和微信还差得比较远,因为在字体的颜色和大小等方面我们还没有进行微调,因此接下来我们还需要自定义ActionBar的样子...自定义ActionBar样式的方法我在上一篇文章有介绍过,不熟悉的朋友可以再去参考一下。...其中有一点需要注意,setSelectedTextColor()这个方法是我自定义的,因为PagerSlidingTabStrip并不支持高亮显示选中Tab那一项的标题,而微信却有这个效果,因此我在这里对
getActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.bg_actionbar));...R.layout.collapsible_edittext) .setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW); // 自定义...Button", Toast.LENGTH_SHORT) .show(); } }); // 自定义...注意导的包要一致 getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); for...(int i = 1; i <= 3; i++) { ActionBar.Tab tab = getSupportActionBar().newTab();
所以,这两节的内容我打算总结下ActionBar和Toolbar的基本使用,因为Toolbar实际上是ActionBar的扩展,所以这一节还是介绍复杂的ActionBar,下一节再继续介绍Toolbar...那么如何自定义呢?比如修改ActionBar的背景颜色该怎么办呢?和以前一样,我们可以继承默认的主题,然后修改默认主题中的某些样式来实现。...以修改ActionBar的背景颜色为例,如果是支持Android 3.0及以上版本的话可以用下面的方式,需要注意两点:(1)自定义android:actionBarStyle ;(2) 自定义的actionBarStyle...注意,如果你是为了兼容Android 2.1版本等低版本系统而使用了支持库Support Library 的话,你还需要自定义一个命名空间NameSpace,因为showAsAction 并不在android...其他的关于ActionBar的内容参见这篇文章Android UI开发详解之ActionBar,它还详细介绍了如果开发带Tab的ActionBar以及下拉模式的ActionBar等内容。
使用ActionBar的好处是,它可以给提供一种全局统一的UI界面,使得用户在使用任何一款软件时都懂得该如何操作,并且ActionBar还可以自动适应各种不同大小的屏幕。...下面是一张使用ActionBar的界面截图: ? 其中,[1]是ActionBar的图标,[2]是两个action按钮,[3]是overflow按钮。...ActionBar actionBar = getActionBar(); actionBar.hide(); 现在重新运行一下程序,就可以看到ActionBar不再显示了,如下图所示:...这就是ActionBar导航和Back键在设计上的区别,那么该怎样才能实现这样的功能呢?其实并不复杂,实现标准的ActionBar导航功能只需三步走。...好了,目前为止我们已经把ActionBar的基础知识介绍完了,那么今天的讲解就到这里,下篇文章中我会带领大家一起更深入地了解ActionBar,
使用代码控制 ActionBar 显示 隐藏 (1) ActionBar 相关方法 ActionBar 相关方法解析 : -- Activity 中获取 ActionBar 对象 : 使用 getActionBar...() 方法, 即可获取; -- 设置 ActionBar 显示 : ActionBar.show() 方法; -- 设置 ActionBar 隐藏 : ActionBar.hide() 方法; (2)...= getActionBar(); } /** * 自定义一个 Fragment, 该 Fragment 主要存放主界面布局 */ public static class PlaceholderFragment...创建 Fragement 对象 创建自定义的 Fragment : Fragment fragment = new TabFragment(); b....自定义 Fragement 相关解析 (1) 获取 Activity 对象 获取方法 : Activity activity = getActivity(), 直接调用 getActivity() 即可获取
官方原文:http://developer.android.com/training/basics/actionbar/styling.html 针对3.0以上的版本: @drawable/actionbar_background ...CustomBackground @drawable/actionbar_background <style
一、添加ActionBar 1、不需要导入ActionBar,因为在android3.0或者以上版本中,ActionBar已经默认的包含在Activity中 2、在Android3.0的默认主题“holographic...版本(默认含有ActionBar) 二、隐藏ActionBar 1、我们可以通过把主题设置为Theme.Holo.NoActionBar为一个Activity去除掉ActionBar。 ...Google提供给一个属性可以让ActionBar浮在界面上,当然你可以让ActionBar的背景为透明, 这样会有良好的体验效果。...Toast.makeText(getApplicationContext(), "onMenuItemActionCollapse", 0).show(); return true; } }); 5、自定义...void onClick(View v) { // TODO Auto-generated method stub Toast.makeText(getApplicationContext(), "自定义
以下内容参考自Android官网http://developer.android.com/training/basics/actionbar/overlaying.html#EnableOverlay...直接调用ActionBar的hide()和show()方法,会造成Activity重新计算和重新绘制布局的新的大小。...在3.0及以上,启用覆盖模式只需要在自定义的Theme中将android:windowActionBarOverlay性质设置为true。例如: <!...如果想在覆盖模式下,依然让布局显示在ActionBar的下方,则在布局文件的父布局下设置paddingTop属性值: 3.0以上版本: 提示:如果想让ActionBar显示在布局的前面,也可以设置ActionBar的背景为透明即可。 效果如下。 image.png
设置标题: actionBar.setTitle("关于我们"); 显示“返回箭头的按钮" actionBar.setDisplayHomeAsUpEnabled(true); 监听返回按钮的
需求 让Actionbar 的背景透明,相当于漂浮在你的页面上 思路 首先,设置ActionBar 浮动到主界面上来。 然后,设置ActionBar的背景色,透明或者半透明。...actionBar = getActionBar(); actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#33000000..."))); //google的actionbar是分为上下两栏显示的,上面的代码只能设置顶部actionbar的背景色, //为了让下面的背景色一致,还需要添加一行代码: actionBar.setSplitBackgroundDrawable...-- 让actionbar漂浮 --> @style/my_actionbar_style... <!
自定义 ActionBar 样式 默认的 ActionBar 样式 : 1....自定义菜单文字样式 (1) 系统默认样式 默认样式下的界面显示 : (2) 自定义菜单 自定义菜单样式 : <!...-- 自定义的菜单样式 --> <style name="OctopusMenuTittleStyle" parent="@android...-- <em>自定义</em>的菜单样式 --> <style name="OctopusMenuTittleStyle" parent="@android...<em>自定义</em>左侧的小箭头 在 Activity 中添加代码 : 显示 左侧的小箭头; -- 显示箭头代码 : /* 获取 <em>ActionBar</em> 对象 */ <em>ActionBar</em> <em>actionBar</em> =
如上图所示的带有标题和两个按钮的叫做ActionBar。是从安卓3.0开始被介绍使用的。系统默认使用ActionBar作为工具栏。ActionBar中的item可以显示为两种——按钮和溢出菜单。...可以说其是ActionBar的一部分。也可以说,其中的菜单项,可以在ActionBar中作为按钮显示出来(通过设置showAsAction的值来实现)。...collapseActionView则属于与toolbar(相当于ActionBar的升级版,在各方面都更灵活)相关的设置,与本文主题偏离,不再赘述。
随着Android 4.0和Android 4.2 的发布和慢慢的推广开来,很多应用也开始使用Google推广的UI设计,而ActionBar是其中相当重要的一部分。...无奈google没有发布3.0之前版本的ActionBar的兼容包。还好网上有提供开源的别人开发的,ActionBarShelock,简称ABS....ABS的还有一项值得一提的优点就是,如果你在3.0以上的机子上使用,那么它会调用系统原生的ActionBar。...另外它的使用方法和系统自身的方法相当相似,如果你ActionBar本身已经很熟悉了,那么ABS也能很快上手。 http://actionbarsherlock.com/下载对应的压缩包 2....4.要使用Actionbar要继承sherlockactivity,在配置文件中声明activity时,要添加Theme设置才行,而且只能是三种或parent是这三种。
效果如图: MainActivity.java具体实现: package com.rainmer.actionbartab; import android.app.ActionBar; import...android.app.Activity; import android.app.FragmentTransaction; import android.app.ActionBar.Tab; import...super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ActionBar...actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);//设置导航模式...ActionBar.TabListener tabListener = new ActionBar.TabListener() {
领取专属 10元无门槛券
手把手带您无忧上云