概述

今天有个群友问 android 图片凸出 效果怎么弄,早以前有过类似的需求,整个项目的提示框都是一个背景,背景上方有凸出半张图片,所以用layer-list写了一个背景来实现。

补上clipChildren属于也可以搞定。

思路

随便画了一下比较丑,大概就是这个样子了,从上图中应该不难看出,有三个部分,顶部为透明的,底部是有色值的,那个六角星就是凸出来的图片。

那么就来动手呗,新建一个资源文件,用layer-list属性,里面用三个item,第一个item设置高度为30dp,第二个item设置top为30dp,就刚好是个垂直布局,第三个item包含一个bitmap标签,作用是为了保持图片的原大小。

代码

layer-list背景

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"><item><!--30dp 透明--><shape><size android:height="30dp" /><corners android:radius="10dp" /><solid android:color="@android:color/transparent" /></shape></item><!--下偏移30dp--><item android:top="30dp"><shape><corners android:radius="10dp" /><solid android:color="@android:color/white" /></shape></item><!--用 bitmap 标签来保持原大小--><item><bitmapandroid:gravity="center_horizontal|top"android:src="@mipmap/ic_sync" /></item>
</layer-list>

layout 设置根节点背景 android:background="@drawable/bg_money_dialog"

<?xml version="1.0" encoding="utf-8"?><!--背景 bg_money_dialog-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"android:background="@drawable/bg_money_dialog"android:orientation="vertical"><EditTextandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center_horizontal"android:hint="请输入提现金额" /><EditTextandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center_horizontal"android:hint="请输入提现密码" /><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center_horizontal"android:text="确认" />
</LinearLayout>

dialogFragment代码

public class CheckoutMoneyDialog extends DialogFragment {@Overridepublic Dialog onCreateDialog(Bundle savedInstanceState) {AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());LayoutInflater inflater = getActivity().getLayoutInflater();View view = inflater.inflate(R.layout.fragment_checkout_money_dialog, null);builder.setView(view);Dialog dialog = builder.create();return dialog;}
}

运行看看效果

效果不佳,可能需要把 EditText 设置一下 layout_marginTop

layout_marginTop="100dp" 后确实图片没有叠在 EditText 之上,可顶部还是没有透明效果,这个原因是由于dialog背景引起的,需然layout透明,可dialog自身也是有背景的,我们把dialog背景透明一下

        Dialog dialog = builder.create();Window window = dialog.getWindow();window.setBackgroundDrawableResource(android.R.color.transparent);return dialog;

成功搞定!喜欢拿去用,也有其它的方式实现,望同仁奉献!

源码:DemoPicBulge

欢迎关注公众号,每天为您推送“人生感悟、说话技巧、职场规则、职场成长”

android 图片凸出相关推荐

  1. android layout后还原位置,Android图片框架photoview如何记住所有状态并还原,包括缩放度,缩放后的移动的距离等等...

    Android图片框架photoview如何记住状态并还原,包括缩放度,缩放后的移动的距离等等,尝试了好多方法都没有作用. private void generateImages() { for (i ...

  2. Android 图片缓存之内存缓存技术LruCache,软引用

    Android 图片缓存之内存缓存技术LruCache,软引用

  3. Android图片压缩(质量压缩和尺寸压缩)

    在网上调查了图片压缩的方法并实装后,大致上可以认为有两类压缩:质量压缩(不改变图片的尺寸)和尺寸压缩(相当于是像素上的压缩):质量压缩一般可用于上传大图前的处理,这样就可以节省一定的流量,毕竟现在的手 ...

  4. Android图片缓存之Lru算法

    前言: 上篇我们总结了Bitmap的处理,同时对比了各种处理的效率以及对内存占用大小.我们得知一个应用如果使用大量图片就会导致OOM(out of memory),那该如何处理才能近可能的降低oom发 ...

  5. Android图片缓存框架Glide

    Android图片缓存框架Glide Glide是Google提供的一个组件.它具有获取.解码和展示视频剧照.图片.动画等功能.它提供了灵活的API,帮助开发者将Glide应用在几乎任何网络协议栈中. ...

  6. Android图片处理

    相信做Android开发的小伙伴对于Android图片压缩.裁剪一定有很深的印象,今天我将带领大家一起学习一下这个看着高深莫测的知识,以便再以后的学习.工作中可以帮助到大家. 首先我们看一下这个问题出 ...

  7. Android图片剪裁库

    最近利用一周左右的业余时间,终于完成了一个Android图片剪裁库,核心功能是根据自己的理解实现的,部分代码参考了Android源码的图片剪裁应用.现在将该代码开源在Github上以供大家学习和使用, ...

  8. Android --- 图片的特效处理

    Android --- 图片处理的方法 转换 -  drawable To  bitmap 缩放 -  Zoom 圆角 -  Round Corner 倒影 -  Reflected bitmapPr ...

  9. Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现

    Android 图片合成:添加蒙板效果 不规则相框 透明度渐变效果的实现 暂时还未有时间开发这效果,所以先贴出来. 先贴一张效果图,这是一张手机截屏: 左上方的风景图:背景图片 右上方的人物图:前景图 ...

最新文章

  1. OAuth2解决什么问题
  2. view类不响应自定义消息_安卓平台如何给控件添加自定义操作?
  3. 传统form表单提交方式的文件上传与文件存储
  4. 二值化图像是什么?图像如何二值化?
  5. Springboot 整合mybatis,实现多数据读写分离分库分表
  6. 在web h5 上 js 绘制汉字 按笔画绘制汉字 汉字拼音 多音字 笔画繁体字 cnchar
  7. excel函数公式html文档,excel公式embed怎么用
  8. 飞机选座——附:东航320选坐攻略
  9. Luogu P1197
  10. java redis 通知_Jboot实现Redis操作事件通知
  11. 中国十大域名注册虚拟主机提供商排行榜
  12. angular的ngStrictDi
  13. 【沃顿商学院学习笔记】宏观经济学——11全球治理Global Governance
  14. 帝国CMS对接百度智能小程序的方法
  15. 轩小陌的Python笔记-day16 模块二总结
  16. 线程二—— 网图下载
  17. 高效程序猿的狂暴之路
  18. 读《我不喜欢这世界,我只喜欢你》有感
  19. 导航网这个最强大吗?
  20. 2020.8.24-8.31 人工智能行业每周技术精华文章汇总

热门文章

  1. 计算机网络笔记(3) 网络应用P2P架构
  2. 记一次成功的软件著作权的申请
  3. 海量智库第3期|Vastbase G100核心技术介绍之【CSN事务快照】
  4. ssh中dao自定义的模板类
  5. Ionic React和Capacitor入门
  6. 来来来,教你如何智慧薅羊毛!
  7. 甲骨文开始审核 Java 许可问题:500 强企业“连夜”卸载 Oracle JDK
  8. 【黄啊码】什么是php-fpm?
  9. 乘”公“而上,Golff腾飞AMA实录
  10. linux 连接 ftp 下载文件