美文网首页
YCXMenu设置透明的方法

YCXMenu设置透明的方法

作者: Felix灬泡泡 | 来源:发表于2017-03-24 16:08 被阅读0次

YCXMenu是类似微信右上角弹出式菜单三方库。
github地址:https://github.com/Aster0id/YCXMenuDemo_ObjC

因项目需求,要设置YCXMenu背景透明,网上说的办法是在YCXMenu.m文件中的第301行修改alpha的值,但更改过后发现连菜单上的文字也跟着透明了。这样的效果不理想,然后就花了一点时间研究了一下,几经波折,最后终于达到了自己的目的。

现把自己的研究成果分享给大家:

第一步:解锁该文件

  • 点击右上角解锁按钮


    解锁.png
  • 选择Unlock解锁


    解锁.png

第二步:设置背景透明度

  • 在第647行和664行、681行、698行设置三角形箭头的alpha值
[[UIColor colorWithRed:R0 green:G0 blue:B0 alpha:0.9] set];
  • 在713、714行设置菜单背景的alpha值
const CGFloat components[] = {
        R0, G0, B0, 0.9,
        R1, G1, B1, 0.9,
};

第三步:设置三角形箭头的大小

修改菜单为透明后,发现三角形箭头和菜单区域有重叠,然后就修改三角形的绘制区域。
因为我的菜单是导航栏右侧按钮点击弹出,所以我是在YCXMenuViewArrowDirectionUp中修改。
在第636到640行,修改如下:

const CGFloat arrowXM = _arrowPosition;
const CGFloat arrowX0 = arrowXM - [YCXMenu arrowSize] + 1;
const CGFloat arrowX1 = arrowXM + [YCXMenu arrowSize] - 1;
const CGFloat arrowY0 = Y0;
const CGFloat arrowY1 = Y0 + [YCXMenu arrowSize] + kEmbedFix - 2.75;

相关文章

  • YCXMenu设置透明的方法

    YCXMenu是类似微信右上角弹出式菜单三方库。github地址:https://github.com/Aster...

  • 自定义View绘图篇(二)-Paint

    1、常用方法 方法描述方法描述setARGB设置绘制的颜色,a代表透明setAlpha设置绘制图形的透明度setC...

  • iOS-常用小技巧03

    1.设置背景半透明: 在开发过程中,很多需要设置控件的透明度,下面提供几种设置控件透明度的方法

  • 设置半透明遮照View

    方法一 直接添加一个UIView,然后把UIView设置为半透明设置控件透明度时,如果直接用alpha属性来设置,...

  • iOS设置导航栏透明

    设置透明 // 导航栏变为透明 // 让黑线消失的方法 变色动画 在NavigationBar下插入一...

  • tabBar & navigationBar 设置透明

    这种设置透明的方法是靠设置透明的图片实现的,因此不影响item,但是首先需要一张全通道全透明的图片 文中的代码是直...

  • iOS - view渐变透明层遮盖

    项目中用到地图设置渐变色,查找资料找到两种方法: 一种设置颜色:为颜色设置渐变效果: 一种设置透明度:为透明度设置...

  • 导航栏透明度问题

    设置导航栏背景颜色: 此方法不能设置颜色透明度,如果需要设置背景色透明度,只能用图片代替或者删除底层遮盖视图 删除...

  • colorWithAlphaComponent

    设置supperView为半透明,而子视图不受影响的方法

  • UIwindow的使用

    1. UIWindowLevel 让UIView 和 UIWindow透明不遮挡下放操作的方法 设置父视图的的透明...

网友评论

      本文标题:YCXMenu设置透明的方法

      本文链接:https://www.haomeiwen.com/subject/mjjfottx.html