Material Design控件使用学习 toolbar+drawerlayout+ Snackbar
效果
1.,导包design包和appcompat-v7 ,设置Theme主题Style为NoActionbar
2.custom_toolbar.xml
<?xml version="1.0" encoding="utf-8"?><android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:id="@+id/tl_custom"android:layout_width="match_parent"android:layout_height="wrap_content"android:background="?attr/colorPrimary"android:minHeight="?attr/actionBarSize"android:popupTheme="@style/ThemeOverlay.AppCompat.Light"app:theme="@style/ThemeOverlay.AppCompat.ActionBar"> </android.support.v7.widget.Toolbar>
3.custom_drawerlayout.xml
<?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/dl_left"android:layout_width="match_parent"android:layout_height="match_parent"><!--主布局--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"><ImageViewandroid:id="@+id/iv_main"android:layout_width="100dp"android:layout_height="100dp" /></LinearLayout><!--侧滑菜单--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:background="#fff"android:layout_gravity="start"><ListViewandroid:id="@+id/lv_left_menu"android:layout_width="match_parent"android:layout_height="match_parent"android:divider="@null"android:text="DrawerLayout" /></LinearLayout> </android.support.v4.widget.DrawerLayout>
4.activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".MainActivity"><!--Toolbar--><include layout="@layout/custom_toolbar" /><!--DrawerLayout--><include layout="@layout/custom_drawerlayout" /> </LinearLayout>
5.MainActivity
import android.graphics.Color; import android.support.design.widget.Snackbar; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.view.View; import android.widget.ArrayAdapter; import android.widget.ListView;public class MainActivity extends AppCompatActivity {private Toolbar toolbar;private DrawerLayout drawerlyout;private ListView lvLeftMenu;private ActionBarDrawerToggle mDrawerToggle;private String[] lvs = {"List Item 01", "List Item 02", "List Item 03", "List Item 04"};private ArrayAdapter arrayAdapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);findViews();toolbar.setTitle("Toolbar");toolbar.setSubtitleTextColor(Color.parseColor("#ffffff"));setSupportActionBar(toolbar);getSupportActionBar().setHomeButtonEnabled(true);getSupportActionBar().setDisplayHomeAsUpEnabled(true);mDrawerToggle=new ActionBarDrawerToggle(this,drawerlyout,toolbar,R.string.open,R.string.close){@Overridepublic void onDrawerOpened(View drawerView) {super.onDrawerOpened(drawerView);Snackbar.make(drawerView, "Open", Snackbar.LENGTH_SHORT).show();}@Overridepublic void onDrawerClosed(View drawerView) {super.onDrawerClosed(drawerView);Snackbar.make(drawerView, "Close", Snackbar.LENGTH_SHORT).show();}};mDrawerToggle.syncState();drawerlyout.setDrawerListener(mDrawerToggle);arrayAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, lvs);lvLeftMenu.setAdapter(arrayAdapter);}private void findViews() {toolbar= (Toolbar) findViewById(R.id.tl_custom);drawerlyout= (DrawerLayout) findViewById(R.id.dl_left);lvLeftMenu= (ListView) findViewById(R.id.lv_left_menu);} }
转载于:https://www.cnblogs.com/xurui1995/p/5816031.html
Material Design控件使用学习 toolbar+drawerlayout+ Snackbar相关推荐
- Material Design控件使用学习 TabLayout+SwipeRefreshlayout
效果: Tablayout有点类似之前接触过的开源ViewPagerIndicator,将其与viewpager绑定,可实现viewpager的导航功能. SwipeRefreshLayout是官方出 ...
- Material Design控件使用(一)
最近学习了一下md设计风格和相对应的控件觉得挺棒的,真希望以后能做安卓设计风格的app,只是心有鱼而力不足,虽身为安卓程序员但由于公司设计成本却每天做着iOS风格的app,这感觉真是(此处省略一万字) ...
- Material Design控件使用(二)
本篇接着之前的Material Design控件总结(一)往下学习support design包下其余控件,如果对Material Design不太熟悉的同学最好把第一篇看完再来看第二篇效果更好 本篇 ...
- Material Design控件使用
本文整合前面四篇的控件,再结合豆瓣读书的API,做了一个搜索书籍和查看书籍信息的Demo. 先上效果图: ##项目依赖库 dependencies {compile fileTree(dir: 'li ...
- android自动生成cardview,学习使用Material Design控件(三)使用CardView实现卡片效果...
本文主要介绍CardView的使用,CardView是继承自FrameLayout,使用比较简单,只需要用CardView包含其他View就可以实现卡片效果了. 实现效果如下: 加入依赖库 depen ...
- Material Design控件 之 CardView
1. 简介 CardView 是继承于 FrameLayout,官方说明它是一个带有圆角背景和阴影的Framelayout. 从英文解释它是一个卡片视图,CardView 可以作为一个子布局,也可以作 ...
- Android Material Design 控件常用的属性
android:fitsSystemWindows="true" 是一个boolean值的内部属性,让view可以根据系统窗口(如status bar)来调整自己的布局,如果值为t ...
- Android M 新控件了解学习
Android M 新控件了解:FloatingActionButton,TextInputLayout,Snackbar,TabLayout, AppBarLayout,NavigationView ...
- WPF控件库之Toolbar
ToolBar 控件是一组通常在功能上相关的命令或控件的容器. 下面的插图显示垂直和水平 ToolBar 控件. 水平 Toolbar 垂直 Toolbar ToolBar 控件 ToolBar 控件 ...
最新文章
- 智源抗疫 - 药物研发小分子性质预测赛
- fatal error: nsync_cv.h: No such file or directory
- cpu和GPU有什么区别
- apt-get需要安装mysql_ubuntu apt-get安装mysql失败-问答-阿里云开发者社区-阿里云
- 判断windows进程是否存在
- 【模糊数学】编程实现文献“研究生招生中的模糊聚类分析方法”
- 【ArcObject开发】实验:ArcObject地图开发基本操作
- SAP License:SAP标准教材的编号原则
- MAC系统关闭IPV6命令
- Java 打印程序设计
- Win10:创建/切换/删除多个电脑桌面
- 网络摄像机进行互联网视频直播录像方案的选择,EasyNVS or EasyCloud or EasyGBS?
- HLS第十二课(bayer photo)
- qbit linux网页ui不能设置中文,BT下载教程 篇四:qbittorrent 设置补充说明及更换WEB UI...
- Python Numpy.std() - 标准差函数
- 开机自检,BIOS运行原理
- 申宝股票-A股长期向好趋势未
- 【管卡婆技术服务支持】
- 10w 行级别Excel数据量导入优化记录
- enicode字体反爬,大厂使用的反爬技术,结合OCR处理页面源代码
热门文章
- 旋转轨迹_谁是最可怕的压轴题?——直线运动轨迹
- ec200s 方案 移远_移远 4G Cat 1 无线通信模块EC200S
- python序列类型举例说明_Python(第八课,序列类型)
- android handler同步,android解决:使用多线程和Handler同步更新UI
- sqlplus 镜像_【Docker】拉取Oracle 11g镜像配置
- delay 芯片时序output_【第二章 STA概念 上】静态时序分析圣经翻译计划
- 鸿蒙系统新手教程,鸿蒙灭神决新手入门全流程图文攻略
- 计算机科学与应用考研题,2015年中科院计算机科学综合考研真题
- c语言深度解剖 pdf,c语言深度解剖(解密).pdf.pdf
- python列表生成时 if_Python列表生成式