您的位置:首页 > 其它

ActionBar使用应用程序图标响应操作

2016-01-10 17:06 344 查看
调用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

激活其他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);
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: