收集一些常用代码

8/16

ActionBar:导航栏,是Activity顶端的一块区域

1.获取ActionBar

ActionBar actionBar = getSupportActionBar(); //获取ActionBar

2.隐藏ActionBar

ActionBar actionBar = getSupportActionBar(); //获取ActionBar
actionBar.hide(); //隐藏ActionBar

3.设置标题

actionBar.setTitle("欢迎使用"); //设置标题

4.显示左侧返回箭头

actionBar.setDisplayHomeAsUpEnabled(true); 
//在ActionBar最左边显示返回箭头按钮,一般写在onCreate或者onStart方法

//ActionBar返回按钮的功能在onOptionsItemSelected()中触发
@Override public boolean onOptionsItemSelected(@NonNull MenuItem item) {
	switch ( item.getItemId() ) {
		case android.R.id.home://系统指定的id(返回按钮)
			finish();
		}
	return super.onOptionsItemSelected(item);
	} 

5.设置ActionBar的LOGO[LOGO图片尺寸要小一点]

actionBar.setDisplayShowHomeEnabled(true);
actionBar.setLogo( R.drawable.logo);
actionBar.setDisplayUseLogoEnabled(true);

6.ActionBar结合选项菜单实现显示按钮

a.普通响应点击事件的按钮

为选项菜单设置showAsAction:always,此时的选项就会显示在ActionBar上,而不在选项菜单(三个点的按钮)里,同时设置选项的icon属性,引用资源文件来作为按钮的图标

showAsAction :always | withText
横屏时(空间大时)才显示标题

b.查询按钮[显示为放大镜图案的搜索图标]

本质上也是查询菜单项,在选项菜单的菜单资源文件中加入以下代码即可

<item
	android:id = "@+id/menu_search"
	android:title = "搜索"
	app:actionViewClass = "android.widget.SearchView"
	app:showAsAction = "always"
 />

app:actionViewClass = “android.widget.SearchView”
按钮显示为搜索组件

查询按钮响应事件的处理代码↓
(在选项菜单的onCreateOptionsMenu方法中)

@Override
public boolean onCreateOptionsMenu(Menu menu) {
	getMenuInflater().inflate(R.menu.main_menu,menu);
	MenuItem menuItem = menu.findItem( R.id.menu_search );//找到MenuItem中的SearchView
	SearchView searchView = (SearchView) menuItem.getActionView();
	searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
		@Override public boolean onQueryTextSubmit(String s) {
			Toast.makeText(MyActivity.this, s, Toast.LENGTH_SHORT).show();
				return false;
		}
		@Override public boolean onQueryTextChange(String s) {
			return false;
		}
	});//SearchView添加查询监听器
		
	return super.onCreateOptionsMenu(menu);
}

onQueryTextSubmit方法:查询信息提交时触发,参数s为输入的查询信息
onQueryTextChange方法:查询信息修改时触发

跳转百度实现查询

public boolean onQueryTextSubmit(String s) {
	Intent intent = new Intent();
	intent.setAction( Intent.ACTION_VIEW );
	intent.setData( Uri.parse("https://www.baidu.com/s?wd="+s) );
	startActivity( intent );return false;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值