只简单实现了一下ActionBar的使用,在右上角添加两个ActionBar,在左上角实现默认的返回箭头,类似于微信朋友圈的

这是MainActivity的代码:

public class MainActivity extends Activity{

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//充气Menu,即把菜单显示出来
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu); return true;
}
//处理菜单上的点击事件
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getItemId()==R.id.add){//如果点击了ActionBar上的添加图标
Toast.makeText(this, "add", 0).show();
}else if(item.getItemId()==R.id.right){//如果点击了打勾的图标
Toast.makeText(this, "打勾", 0).show();
}
return true;
}
//跳转到第二个Activity
public void click(View v){
startActivity(new Intent(this, SecondActivity.class));
}
}

这是MainActivity上的菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
<item
android:id="@+id/add"
android:showAsAction="ifRoom"
android:icon="@drawable/a_f_inbox"/>
<item
android:id="@+id/right"
android:showAsAction="ifRoom"
android:icon="@drawable/common_checkbox_checked"/>
<item
android:id="@+id/back"
android:showAsAction="ifRoom"
android:icon="@drawable/back_pressed"/>
</menu>

第二个Activity的代码:

/**第二个Activity*/
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second); //相当于给ActionBar上装上默认的返回箭头
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
}
  //显示第二个Activity的顶部菜单栏
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.seond_activity_actionbar, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
//android.R.id.home 此ID就是那个ActionBar上默认返回箭头的系统ID
if(item.getItemId()==android.R.id.home){//当点击了返回箭头
finish();
}else if(item.getItemId()==R.id.second){
Toast.makeText(this, "第二个Activity的联系人ActionBar", 0).show();
} return true;
}
}

第二个Activity的菜单代码:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- 联系人的头像 -->
<item android:id="@+id/second"
android:showAsAction="ifRoom"
android:icon="@drawable/ic_contact_picture"/> </menu>

运行结果图:

  

ActionBar的简单使用的更多相关文章

  1. ActionBar 的简单使用

    About ActionBar The action bar is one of the most important design elements you can implement for yo ...

  2. 安卓---achartengine图表----简单调用----使用view显示在自己的布局文件中----actionBar的简单设置

    AChartEngine 是一个安卓系统上制作图表的框架,关于它的介绍大家可以百度,也可以参考下面这篇博客http://blog.csdn.net/lk_blog/article/details/76 ...

  3. [Android]AndroidDesign中ActionBar探究2 嵌入Fragment

    上一节我们只是简单了介绍了Android Design风格中的ActionBar的简单实用,如添加MenuItem,这节我们会进一步了解ActionBar的其他功能. 在Android Develop ...

  4. Android M 控件:Snackbar、Toolbar、TabLayout、NavigationView

    Snackbar Snackbar提供了一个介于Toast和AlertDialog之间轻量级控件,它可以很方便的提供消息的提示和动作反馈.Snackbar的使用与Toast的使用基本相同: Snack ...

  5. 001.android初级篇之ToolBar

    官方的最新support library v7中提供了新的组件ToolBar,用来替代之前的ActionBar,实现更为弹性的设计在 material design 也对之做了名称的定义:App ba ...

  6. 美好头标ToolBar

    ActionBar我相信是每一位合格的程序员都用过的组件,也是每一个程序员都会抱怨的组件,因为他不能实现复杂的自定义.为此Google推出了比ActionBar更为美好的组件ToolBar. 本文重点 ...

  7. Android Material Design之Toolbar与Palette

    转:http://blog.csdn.net/jdsjlzx/article/details/41441083 前言 我们都知道Marterial Design是Google推出的全新UI设计规范,如 ...

  8. android Material Design详解

    原文地址:http://blog.csdn.net/jdsjlzx/article/details/41441083/ 前言 我们都知道Marterial Design是Google推出的全新UI设计 ...

  9. [安卓] 18、一个简单的例子做自定义动画按钮和自定义Actionbar

    在做安卓UI的时候有时候需自定义具有动画效果的按钮或需要自定义一下actionbar~ 本节用一个简单的demo讲如何自定义具有动画效果的按钮,以及个性化的actionbar 下面是效果: 其中: △ ...

随机推荐

  1. android 联网

    <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="htt ...

  2. windows7所有版本

    windows7所有版本迅雷地址下载集合(含32位和64位) Windows7 SP1旗舰版 32位官方原版下载: ed2k://|file|/cn_windows_7_ultimate_with_s ...

  3. 创建简单动画(一) --- 常规hud

    先说下当前我为处理动画的思路: (新手上路, 老司机轻喷,如果有更好的实现方法请大神指教 感恩戴德) #1. 分析动画构成 #2. 如果是位移动画则考虑使用BasicAnimation或者Keyfra ...

  4. HDU 5811 Colosseo

    首先判断一下两个集合是否能够拓扑排序,顺便记录下每个节点的拓扑序. 然后看T2中每个点在T1中能够放在哪一个位置,记录下这个位置Pi. 然后T2中(按拓扑序排好),计算Pi的一个非严格递增的LIS.L ...

  5. 笔记整理--Linux多线程

    Unix高级环境编程系列笔记 (2013/11/17 14:26:38) Unix高级环境编程系列笔记 出处信息 通过这篇文字,您将能够解答如下问题: 如何来标识一个线程? 如何创建一个新线程? 如何 ...

  6. TCP/IP,http,socket,长连接,短连接

    TCP/IP TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层. 在网络层有IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议. 在传输层中有TCP协议与UDP协议. 在应 ...

  7. java中list集合的内容,如何使用像数据库中group by形式那样排序

    java中list集合的内容,如何使用像数据库中group by形式那样排序,比如:有一个 List<JavaBean> 他中包含了一些如下的内容JavaBean:name    mone ...

  8. hdu_1074_Doing Homework(状压DP)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1074 题意:给你n个课程(n<=15)每个课程有限制的期限和完成该课程的时间,如果超出时间,每超 ...

  9. parseSdkContent failed 解决方案

    开Eclipse出现错误“parseSdkContent failed”,Android的模拟器启动不了.尝试了不少方法,终于搞定. 1.删除文件夹 C:\Documents and Settings ...

  10. @font-face的用法

    几乎所有浏览器(包括最古老的IE6)也支持的网络字体@font-face的用法是: @font-face { font-family: 'MyWebFont'; src: url('webfont.e ...