15 Actionbar的显示和隐藏

ActionBar

15 Actionbar的显示和隐藏

  • 显示隐藏方法:

    • 在布局文件中设置 theme主题

      <?xml version="1.0" encoding="utf-8"?>
      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.qf.day15_actionbar_demo1"
      android:versionCode="1"
      android:versionName="1.0" > <uses-sdk
      android:minSdkVersion="11"
      android:targetSdkVersion="18" /> <!--
      换主题 换不同的action样式
      android:theme="@style/AppTheme"
      android:theme="@android:style/Theme.Light"
      android:theme="@android:style/Theme.Holo"
      android:theme="@android:style/Theme.Holo.Light"
      android:theme="@android:style/Theme.Holo.NoActionBar"
      -->
      <application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      <activity android:name="com.qf.day15_actionbar_demo1.MainActivity"
      android:label="@string/app_name"
      android:uiOptions="splitActionBarWhenNarrow"
      >
      <intent-filter>
      <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
      </activity>
      </application> </manifest>
    • 逻辑代码中

      package com.qf.day15_actionbar_demo1;
      
      import android.annotation.SuppressLint;
      import android.app.ActionBar;
      import android.app.Activity;
      import android.os.Bundle;
      import android.view.Menu;
      import android.view.MenuItem;
      import android.view.View;
      import android.view.Window;
      import android.widget.TextView; public class MainActivity extends Activity { private ActionBar actionBar; private TextView tv; private int tvSize = 10;
      @SuppressLint("NewApi")
      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      //方法控制没有标题栏 // 要在setContent之前设置否则直接奔溃
      //requestWindowFeature(Window.FEATURE_NO_TITLE); //显示
      // requestWindowFeature(Window.FEATURE_ACTION_BAR);
      setContentView(R.layout.activity_main); tv = (TextView) findViewById(R.id.tv); //获取当前ActionBar
      actionBar = getActionBar(); //应用图标是否能点击 带一个向左的箭头 监听的ID是android.R.id.home
      actionBar.setDisplayHomeAsUpEnabled(true);
      //应用图标是否能点击 不带箭头
      //actionBar.setHomeButtonEnabled(true); //是否显示应用程序图标
      actionBar.setDisplayShowHomeEnabled(true);
      } @Override
      public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.main, menu);
      return true;
      } @Override
      public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getItemId()) {
      case android.R.id.home://应用程序图标的id finish(); break;
      case R.id.action_add:
      tvSize+=10;
      tv.setTextSize(tvSize);
      break;
      case R.id.action_call:
      tv.setText("拨打电话中....");
      break;
      case R.id.action_camera:
      tv.append("\n"+"美颜拍照");
      break;
      case R.id.action_delete:
      tv.setText("");
      break; default:
      break;
      }
      return super.onOptionsItemSelected(item);
      } public void MyClick(View v){
      //判断actionBar是否正在展示
      if(actionBar.isShowing()){
      actionBar.hide();//隐藏
      }else{
      actionBar.show();//显示
      }
      } }
上一篇:ES shrink ——一般是结合rollover一起使用的,一开始没有看懂官方shrink文档,当看了这个之后就明白了


下一篇:那些NPM文档中我看不懂地方