与drawable的较量(一)
前言
在android ui中drawable 是一个非常关键的要点,因为我们现在使用的花里胡哨的APP,都在胡里花哨的drawable 构建的。
drawable,英文翻译为可拖拽的。说白了就是自己写好,拿来就用。我英文不好,一般把英文的拖拽理解成拿来主义,反正英文的单词都是一个抽象概念。
bitmapDrable
bitmap 认识,位图。 drable,用来修饰bitmap。大概就是来绘制一张bitmap的图形。

凡事先创建一个,然后:

这样就创建了一个bitmapable。
有一些属性:
src:就是连接一张图标,转化成bitmap,像这样:
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/android">
</bitmap>
效果:

原图:

原图比较小方便看后续效果。
bitmapDrable 有几种ps效果:
1.antialias:抗锯齿,白话文:去毛边,人话就是修饰原本图片的周边凹凸不平,然后给修平了。后遗症:图片会变模糊。
效果:

2.dither: 开启抖动。人话:在色像素的手机中显示效果更好。原因是比如创建这个bitmap的时候选用RRGB8888,然后在一些色彩模式RGB555的就会失真。把这个设置为true,
失真就会减少,一般开启。
3.filter:过滤效果。图片拉伸或者缩小显示效果更好。好的,开启就完事。
4.alpha :透明度,终于来了一个看的懂的。。。。
好了,看下,位置效果。
gravity:重心位置,就是往哪里偏。
比如说设置android:gravity="top"
然后在layout中引用:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/testbitmap">
看到的效果:

黄框就是我们的容器LinearLayout,红框就是android:background="@drawable/testbitmap",因为设置了top所以在top位置,那么设置一下bottom。如图:

就到下方,然后可以用|来组合使用,比如说left|top,表示左上角,等等可以自己玩点花样。
tileModel:平铺模式,说白了就是补缺。如:android:titleModel="react",效果:

如:android:titleModel="mirror" 镜像模式,正一反:

如:android:tileModel="clamp" 神奇般的:

NinePathDrawable
图片的9格式。和bitmap属性一毛一样,就是放大和缩小的时候吧,不会失真。
other
后续补齐
总结
1.drable 是拿来主义。
2.bitmapdrable 可以想象就是一个bitmap,然后我们通过简易的属性就可以操作成我们想要的图形。
3.NinePathDrable 和bitmapdrable 属性一样,拥有.9格式图片的效果,根据宽/高 进行缩放不会失真。
与drawable的较量(一)的更多相关文章
- android studio你可能忽视的细节——启动白屏?drawable和mipmap出现的意义?这里都有!!!
android studio用了很久了,也不知道各位小伙伴有没有还在用eclipse的,如果还有,楼主真心推荐转到android studio来吧,毕竟亲儿子,你会知道除了启动速度稍微慢些,你找不到一 ...
- Drawable实战解析:Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)
Android XML shape 标签使用详解 一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...
- drawable微技巧以及layout的小知识
来源:http://blog.csdn.net/guolin_blog/article/details/50727753 最简单的办法是把dp理解成实际物理单位,和英寸.毫米等一样(1dp等于1/16 ...
- android ImageLoader 混淆加载drawable出现黑色图片的解决方案
在网上找了很久,没有找到.后来看了源码才知道... 多线程异步加载和显示图片(图片来源于网络.sd卡.assets文件夹,drawable文件夹(不能加载9patch),新增加载视频缩略图) Stri ...
- Android Drawable 那些不为人知的高效用法
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43752383,本文出自:[张鸿洋的博客] 1.概述 Drawable在我们平时的 ...
- Android Drawable、Bitmap、byte[]之间的转换
转自http://blog.csdn.net/june5253/article/details/7826597 1.Bitmap-->Drawable Bitmap drawable2Bitma ...
- Android中Bitmap,byte[],Drawable相互转化
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- PopupWindow 点击外部和返回键无法消失背后的真相(setBackgroundDrawable(Drawable background))
刚接手PopupWindow的时候,我们都可能觉得很简单,因为它确实很简单,不过运气不好的可能就会踩到一个坑: 点击PopupWindow最外层布局以及点击返回键PopupWindow不会消失 新手在 ...
- textview设置drawable
textview可以在上下左右四个方向添加图片,同时也可以动态改变这些图片: 下面有我写的一个例子: 在xml文件中: <TextView android: ...
随机推荐
- poj 3624 Charm Bracelet(01背包)
Charm Bracelet Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 29295 Accepted: 13143 ...
- VMware 注册码
VMware 12 Pro 永久许可证激活密钥 5A02H-AU243-TZJ49-GTC7K-3C61NVF5XA-FNDDJ-085GZ-4NXZ9-N20E6UC5MR-8NE16-H81WY- ...
- 51nod1327 棋盘游戏
远古大坑 神仙DP状态设计题 https://blog.csdn.net/white_elephant/article/details/83592103 从行的角度入手,无论如何都要状压 每列最多放一 ...
- 2018-11-2-win10-uwp-通过-win2d-画出笔迹
title author date CreateTime categories win10 uwp 通过 win2d 画出笔迹 lindexi 2018-11-2 20:11:0 +0800 2018 ...
- bash: : Too many levels of symbolic links
ln -s 时 bash: : Too many levels of symbolic links改为绝对路径,
- vagrant在windows下的安装和配置(一)
记录一下安装和配置过程中的一些坑步骤一分别下载vagrant和VirtualBox,我这里下载的是vagrant_1.9.1.msi 和 VirtualBox-5.1.14-112924-Win.ex ...
- VUE事件修饰符.passive、.capture、.once实现原理——重新认识addEventListener方法
https://www.jianshu.com/p/b12d0d3ad4c1 .passive的作用与使用场景 https://juejin.im/post/5ad804c1f265da504547f ...
- easyUI demo2
图片: 代码: jsp <%@ page language="java" import="java.util.*" pageE ...
- Excel读取方式优化(浅谈对规律的认知)
相信大家都接触过对Excel的读取,今天突发奇想,想将自己的一小段经历分享出来.灵活识别列名并将其存到对象数组中. 固定形式的Excel列的读取: 源于我第一次操作Excel,将列名对应成table中 ...
- markdown设置编辑基本语法
看到其他人写的东西,版面设计,文字样式,区域划分都是那么好看,我一直不知道是怎么设计的,今天发现了,做以记录. #一.设置Markdown编辑模式 二.Markdown编辑语法 一.标题 在想要设置为 ...