TextView-shadow 阴影实现
直接上代码
1)实现普通效果
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:shadowColor="#ff0000"
android:shadowDx="3"
android:shadowDy="3"
android:shadowRadius="1"
android:text="abcdefg"
android:textColor="#0000ff"
android:textSize="100sp" />
运行结果如下

2)测试下各个属性值影响
1.
android:shadowRadius="0"
结果

所以,只要让
shadowRadius = 0,就不会有阴影显示 2.
android:shadowRadius="20"
结果

它控制的主要就是阴影的宽度,它的值也大,阴影越大,而且颜色越淡
3.测试下dx,dy的作用
android:shadowDx="30"
android:shadowDy="30"
结果

也就是阴影的偏移量。
总结如下
1. android:shadowColor:阴影的颜色
2. android:shadowDx:水平方向上的偏移量
3. android:shadowDy:垂直方向上的偏移量
4. android:shadowRadius:是阴影的的半径大小
以上变量全是px单位。而且,如果您想用@dimen引用,会报错。
如果你想在代码中使用,可以使用如下方法
package com.example.imagetest; import android.R.integer;
import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView; public class MainActivity extends Activity {
TextView tv;
Button bt;
int a;
float t1;
float t2; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.tv);
bt = (Button) findViewById(R.id.bt);
a = 0;
t1 = getResources().getDimension(R.dimen.activity_horizontal_margin);
t2 = getResources().getDimension(R.dimen.activity_vertical_margin); bt.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
if (a == 1) {
// R.color没有效果
tv.setShadowLayer(t1, t1, t1, R.color.aaa);
a = 0; } else {
tv.setShadowLayer(t2, t2, t2, 0x800000ff);
a = 1;
}
bt.setText(a + "");
}
}); } }
也就是setShadowLayer方法
setShadowLayer(radius, dx, dy, color);
它的四个参数,分别对应上面的四个属性
四个属性取值,要么直接写,要么使用getResource进行一步转化才行
TextView-shadow 阴影实现的更多相关文章
- 分享div、text、Box Shadow(阴影)演示及代码的页面
附图: 直接上链接:www.css88.com/tool/css3Preview/Box-Shadow.html
- iOS 2D绘图 (Quartz2D)之阴影和渐变(shadow,Gradient)
原博地址:http://blog.csdn.net/hello_hwc/article/details/49507881 Shadow Shadow(阴影) 的目的是为了使UI更有立体感,如图 sha ...
- 阴影锥(shadow volume)原理与展望
转记:找了不少关于shadow volume原理的资料,还是这个帖子讲解的一目了然,转帖在这里,方便查阅.引用链接:http://blog.donews.com/yyh/archive/2005/05 ...
- CSS3 01. CSS3现状、属性选择器、伪类选择器、结构伪类、伪元素选择器、颜色、文本阴影shadow、盒子模型、私有化前缀
CSS 3 现状 兼容性差,需添加私有前缀/移动端优于PC端/不断改进中/渐进增强原则/考虑用户群体/遵照产品的方案 : CSS3手册 需要阅读其--阅读及使用指引 []表示全部的可选项 || 或者 ...
- 阶段一:为View设置阴影和弹出动画(天气应用)
“阶段一”是指我第一次系统地学习Android开发.这主要是对我的学习过程作个记录. 上一篇阶段一:通过网络请求,获得并解析JSON数据(天气应用)完成了应用的核心功能,接下来就要对它进行优化.今天我 ...
- (转)Shadow Map & Shadow Volume
转自:http://blog.csdn.net/hippig/article/details/7858574 shadow volume 这个术语几乎是随着 DOOM3 的发布而成为FPS 玩家和图形 ...
- css边框阴影
<style type="text/css">.mydiv{width:250px;height:auto;border:#909090 1px solid;backg ...
- div边框阴影的实现【转载】
box-shadow:阴影水平偏移值(可取正负值): 阴影垂直偏移值(可取正负值):阴影模糊值:阴影颜色: Firefox支持Box Shadow(阴影):-moz-box-shadow:2px 2p ...
- CSS3 盒阴影(box-shadow)详解
CSS3 的 box-shadow 有点类似于 text-shadow,只不过不同的是 text-shadow 是对象的文本设置阴影,而 box-shadow 是给对象实现图层阴影效果.本文我们搁下I ...
- 使用TextView/EditText应该注意的地方,监听EditText,addTextChangedListener
http://blog.csdn.net/huichengongzi/article/details/7818676 监听 EditText 控件: addTextChangedListener(ne ...
随机推荐
- 机器学习(四) 分类算法--K近邻算法 KNN (上)
一.K近邻算法基础 KNN------- K近邻算法--------K-Nearest Neighbors 思想极度简单 应用数学知识少 (近乎为零) 效果好(缺点?) 可以解释机器学习算法使用过程中 ...
- ES6第一节:开发环境的搭建
前言:由于目前浏览器对ES6的支持度不高,需要借助babel将编写好的ES6代码转换成ES5,浏览器才能解析. 需要在NodeJS环境下运行 一. 建立结构:两个文件夹和一个html文件,分别是src ...
- chgrp---改变文件或目录所属的用户组
chgrp命令用来改变文件或目录所属的用户组.该命令用来改变指定文件所属的用户组.其中,组名可以是用户组的id,也可以是用户组的组名.文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描 ...
- UML图和C#
这段时间学习了楚光明老师解说的C#视频,接触这个学习材料的第一感觉就是老师解说的通俗易懂,非常easy让人去接受:再有就是在学习到UML图和C#的一节时非常有收获,之前自己也学习过UML图的一 ...
- myeclipse中断点调试
在代码最左端,也就是行号位置处双击.会出现一个实心小圆点.即增加的断点.debug启动程序,就会运行到断点处: 按F5是进去方法里面. 按F6是一步一步走, 按F7是跳出方法里面(按F5后再按F7就跳 ...
- RvmTranslator6.4 is released
RvmTranslator6.4 is released eryar@163.com RvmTranslator can translate the RVM file exported by AVEV ...
- Razor数组数据
控制器层 public ActionResult DemoArray() { Product[] array = { new Product {Name = "Kayak", Pr ...
- onvif开发总结
ONVIF开发经验总结 ONVIF开发经验总结............................................................................. ...
- BootStrap_Table 学习
https://blog.csdn.net/heting90/article/details/52248729 $("#realTime_Table").bootstrapTabl ...
- js常用代码示例及解决跨域的几种方法
1.阻止默认行为 // 原生js document.getElementById('btn').addEventListener('click', function (event) { event = ...