文章目录

  • 字体阴影
  • 用9png图片实现通用阴影效果
  • 用9png图片实现网络传输

字体阴影

字体阴影有四个相关参数:

  1. android:shadowRadius:阴影半径
  2. android:shadowColor:阴影颜色
  3. android:shadowDx:水平偏移
  4. android:shadowDy:垂直偏移
<TextView        android:id="@+id/tvshadow"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:textSize="60sp"        android:textColor="#ffffffff"        android:layout_gravity="center"        android:text="Test Shadow"        android:shadowColor="#ff000000"        android:shadowRadius="10"        android:shadowDx="10"        android:shadowDy="10"        />


需要注意的是,这几个参数只对TextView控件有效,其它的控件比如ImageView和布局控件如LinearLayout则无效

如果需要让布局控件比如LinearLayout有阴影效果怎么办呢?
解决方案就是:制作带有阴影效果的9png图片作为背景图片。

用9png图片实现通用阴影效果

这里提供一个在线制作带有阴影效果的9png的网站:

https://inloop.github.io/shadow4android/

网站提供强大的参数设置功能,能够满足我们设置阴影png需求。


制作出来的效果:

用9png图片实现网络传输

关于9png的使用,平常我们可能会将制作好的png图片放入工程中,然后打包进apk内安装使用。
但是有需求是要求从网络获取9png图片,然后在apk的控件中显示出来。
如果这个9png图片不经过处理,直接放在网上,然后经由app在使用过程中下载下来,将这个bitmap设置成背景,那么你会惊奇的发现这个图片并没有达到9png图片的效果,而是一张普通图片,设置连9png的黑边都显示出来并拉伸了。

原因是如果放在res下的图片,经过打包后实际上是经过处理过的图片,我们可以通过解压apk来查看这个图片,会比原来的9png图片少了两个像素。

所以我们如果要从网络下载一个9png的图片,这个图片也必须经过处理,然后才能放到网上才有效果。

具体做法:

  1. 找到sdk下的aapt目录:比如sdk\build-tools\28.0.3;
  2. 运行指令:aapt.exe c -v -S C:\1 -C C:\2,其中C:\1是原始9png图片所在目录,C:\2是处理后的9png图片所在目录。需要注意的是,这两个目录不能一样,否在运行会失败。

更多相关文章

  1. Android(安卓)教程 Android中UI设计的一些技巧!!!
  2. Android(安卓)UI基础——ImageView&ImageButton控件
  3. Android(安卓)TextView实现滚动跑马灯效果Marquee
  4. Android兼容性问题 -- WebP格式图片解码失败
  5. Android相对布局实现各种梅花效果
  6. 登录时旋转等待效果
  7. Android中实现滑动效果
  8. 浅谈android的selector背景选择器
  9. Android(安卓)imageView图片按比例缩放

随机推荐

  1. Android使用ViewPager实现左右滑动效果
  2. i-jetty环境搭配与编译
  3. Android(安卓)Logcat 直接输出JSON格式的
  4. 再看Android(安卓)屏幕切换引起的生命周
  5. pull解析
  6. Android(安卓)/ iOS 静态代码扫描工具调
  7. android开发之给LinearLayout增加点击效
  8. Android常用开源框架
  9. 利用Handler来更新android的UI
  10. Android(安卓)Android.mk 文件一点感悟