调用ActionBar类的setDisplayHomeAsUpEnabled()方法即可使用应用程序图标作为导航
且自动添加向左的小箭头。
使用其它图标:
调用ActionBar类的setIcon()方法即可
//获取ActionBar对象
ActionBar actionbar = getActionBar();
//设置图标
actionBar.setIcon(R.drawable.ic_launcher);
//使用图标作为导航
actionBar.setDisplayHomeAsUpEnabled(true)
一旦使用图标作导航,该位置的资源ID即为:android.R.id.home,
开发人员可以通过对该ID对点击事件进行响应。
在Activity中重写onMenuItemSelected(或onOptionsItemSelected()方法,
均可对该位置的点击事件进行响应,常见的响应方式是返回上一个界面或返回主界面,使用INtent
且自动添加向左的小箭头。
使用其它图标:
调用ActionBar类的setIcon()方法即可
//获取ActionBar对象
ActionBar actionbar = getActionBar();
//设置图标
actionBar.setIcon(R.drawable.ic_launcher);
//使用图标作为导航
actionBar.setDisplayHomeAsUpEnabled(true)
一旦使用图标作导航,该位置的资源ID即为:android.R.id.home,
开发人员可以通过对该ID对点击事件进行响应。
在Activity中重写onMenuItemSelected(或onOptionsItemSelected()方法,
均可对该位置的点击事件进行响应,常见的响应方式是返回上一个界面或返回主界面,使用INtent
激活其他Activity组件,或调用finish()结束当前Activity(当前Activity结束时,前一个Activity则回到前台)均可
直接上代码:
package com.example.actionbar_test;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
public class ActionBar_Activity extends Activity {
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_action_bar_);
ActionBar actionbar = getActionBar();
actionbar.setIcon(R.drawable.home_checked);
actionbar.setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
int id = item.getItemId();
if(id == R.id.action_settings){
return true;
}
if(id == android.R.id.home){
//响应ActionBar中图标点击
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
return super.onOptionsItemSelected(item);
}
}