安卓界面之Toolbar上手
一.在配置文件采用自定义Style方法去除Actionbar
<resources>
<style name="MyTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item> <!--去除Actionbar-->
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<!--toolbar菜单颜色设置-->
<item name="android:textColorSecondary">#ffff</item>
</style>
</resources>
二.XML文件中添加Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/tb_id"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
android:background="?attr/colorPrimary"
app:titleTextColor="@color/colorwhite"
></android.support.v7.widget.Toolbar>
三.在java代码中添加Toolbar
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initTools();
}
//添加Toolbar
private void initTools() {
android.support.v7.widget.Toolbar mtoolbar=findViewById(R.id.tb_id);
//设置Toolbar菜单点击事件
mtoolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.one: {
Toast.makeText(MainActivity.this, "我是1", Toast.LENGTH_SHORT).show();
break;
}
case R.id.two: {
Toast.makeText(MainActivity.this, "我是2", Toast.LENGTH_SHORT).show();
break;
}
case R.id.three: {
Toast.makeText(MainActivity.this, "我是3", Toast.LENGTH_SHORT).show();
break;
}
}
return true;
}
});
setSupportActionBar(mtoolbar);
}
// 创建Toolbar菜单
//R.menu.menu是一个定义菜单选项的XMl文件,在第四步中说明
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu,menu);
return super.onCreateOptionsMenu(menu);
}
}
四.menu选项菜单选项设置
通过在res目录下新建menu目录,并在该目录下添加Menu resourse file(其实就是一个XML文件),然后就可以定义想要的选项.
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
>
<item
android:id="@+id/one"
android:title="one" />
<item
android:id="@+id/two"
android:title="two" />
<item
android:id="@+id/three"
android:title="three" /> </menu>
安卓界面之Toolbar上手的更多相关文章
- 安卓界面之Toolbar+tablayout+viewpager仿WhatsApp界面样式
实现界面: 布局代码: <?xml version="1.0" encoding="utf-8"?> <android.support.con ...
- 安卓界面之Viewpager和Tablayout实现滑动界面
摘要:六部实现选项卡界面 一. 在gradle文件添加以下代码: implementation 'com.android.support:design:28.0.0' 在gradle文件添加以上代码后 ...
- 安卓开发之Toolbar
根据官网的教程,发现实现与预期不一致,查看相关资料自己整理了一下(官网开发文档:https://developer.android.com/training/appbar/setting-up.htm ...
- 安卓开发之Toolbar返回键
本文前三步演示了为Toolbar添加返回键并实现返回的步骤,第四步给出了设置返回键颜色的方法. 1.在xml布局中引用toolbar: <android.support.design.widge ...
- android用户界面之Gallery3D学习资料汇总
一.Gallery之根蒂根基教程1.Android Gallery与衍生BaseAdapter容器 http://www.apkbus.com/android-6249-1-1.html 2.Andr ...
- android用户界面之ScrollView教程实例汇总
--------------------------汇总不容易啊------------------------------- 一.ScrollView基础知识 1.Android中ScrollVie ...
- Qt---自定义界面之QStyle
最近想学习下Qt的自定义界面,因此花了点时间看了下QStyle,,,,结果很难受,这一块涉及到一大块GUI的具体实现方式,看得我很头疼.想看第一手资料并且英语功底不错的可以直接上qt文档,下面我会以易 ...
- Qt---自定义界面之 Style Sheet
这次讲Qt Style Sheet(QSS),QSS是一种与CSS类似的语言,实际上这两者几乎完全一样.既然谈到CSS我们就有必要说一下盒模型. 1. 盒模型(The Box Model) 在样式中, ...
- 登录界面之Axure原型制作
*****登录界面制作步骤***** 1.背景色:需要设定的背景色不知道色值,可以使用截图工具截取一小块粘贴到axure页面, 点击页面样式中的背景色左上角的取色器点击一下该色块,即可将背景色全部填充 ...
随机推荐
- LeetCode:146_LRU cache | LRU缓存设计 | Hard
题目:LRU cache Design and implement a data structure for Least Recently Used (LRU) cache. It should su ...
- gitlab服务部署及使用
一.什么是gitlib Gitlab 是一个基于Git实现的在线代码仓库托管软件,你可以用Gitlab自己搭建一个类似于Github一样的系统平台,一般搭建gitlab私服就是用在公司的内部 Gitl ...
- 求一个集合的所有真子集 Python
给定一个集合,元素均为正整数且不重复,求该集合的所有子集 # -*- coding: utf-8 -*- """ Created on Tue Oct 10 09:04: ...
- Django--中间件相关
一 什么是中间件 中间件顾名思义,是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出.因为改变的是全局,所以需要谨慎实用,用不好会影 ...
- 配置 Nginx 的目录浏览功能
Nginx 默认是不允许列出整个目录的,需要配置 Nginx 自带的 ngx_http_autoindex_module 模块实现目录浏览功能 . location / { alias /opt/fi ...
- webpack-loader是怎样炼成的
目录 啰嗦两句 loader 是干什么的 loader 的工具箱 --context loader 实战 啰嗦两句 学习这件事从学习动机上来看,可以分成两种情况:主动学习和被动学习.主动学习就是,某天 ...
- Zabbix4.2.0使用Python连接企业微信报警
目录 1. 配置企业微信 2. 脚本配置 2.1 安装python依赖的库 2.2 编写脚本 2. 搭建FTP 3. 配置Zabbix监控FTP 3.1 添加FTP模板 3.2 添加报警媒介 3.3 ...
- CSS 基础:定位元素(3)<思维导图>
这段时间利用一下间隙时间学习了CSS的基础知识,主要目的是加深对CSS的理解,虽然个人主要工作基本都是后台开发,但是个人觉得系统学习一下CSS的基础还是很有必要的.下面我学习CSS时做的思维导图(全屏 ...
- EOS生产区块:解析插件producer_plugin
producer_plugin是控制区块生产的关键插件. 关键字:producer_plugin,同步区块的处理,pending区块,生产区块,最后不可逆区块,生产循环,生产安排,水印轮次,计时器,确 ...
- 【详解】换一个角度看Socket的数据读写
前言 以前对IO.NIO还算了解,也写过Netty的项目.但是对底层的数据传递不是很了解,一直存有这方面的疑惑.但是由于有其他事情就被打断了.前阵子因为想要了解volatile关键字的原理,学习了下J ...