zoukankan      html  css  js  c++  java
  • ActionBar的简单使用

    只简单实现了一下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>

    运行结果图:

      

  • 相关阅读:
    HDU3516 树的构造
    poj1160 post office
    poj1260 pearls
    POJ 3709 K-Anonymous Sequence
    HDU2829
    HDU 3480 division
    HDU3507 print artical
    HDU2490 parade
    HDU3530 子序列
    HDU3415
  • 原文地址:https://www.cnblogs.com/android-yus/p/4953790.html
Copyright © 2011-2022 走看看