iOS开发——扫码界面实现
发表于|更新于
|浏览量:
类似下面这样一个收款界面的实现
界面分析
- 黑色半透明背景
- navgationBar下面绿色的那个headerView
- 扫码框,及绿色动态扫码线的实现
- 扫码框下面的提示文字
黑色背景的实现,可能跟想象的不同,见下图(图中的1/2/3只是标识不同部分,不是顺序),先是需要放一个backView,然后是放中间的扫码框3,再然后上下左右四个1,最后放headerView和提示文字2;
实现
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2024-04-24
借助腾讯混元助手屏蔽简书登录框
背景查东西的时候,有些文章在简书,然后在浏览简书的时候,未登录时会弹出登录框,很烦人,所以想屏蔽掉。也想把右边的热门故事和底部的推荐关闭掉。说实话,我对《离婚后,妈宝男前夫后悔了》之类的是真的不感兴趣啊。。。所以就想通过 js 实现过滤掉这三部分。通过暴力猴,然后自己实现一个过滤脚本,具体步骤如下: 首先明确需求,要移除的共有三个部分, 未登录时的登陆框 右边的热门故事 底部的推荐 如下图所示: 然后一步步来看。 实现登陆框的移除查看网页源代码,对比登录框弹出前后,可以看出,当登陆框弹出时,body的style变为了overflow: hidden;;且尾部多了一个div。如下图: 所以如果想要去除登陆框,要做的就是在登陆框弹出时,移除尾部的div,并把body的style改为none。问题是,如何判断登陆框弹出时? 有两种方案,一种是监听滚动的位置,因为观察发现,登陆框是滚动到指定位置时才弹出的。还有一种是,换一个思路,监听 body 的 style,当body的style变为overflow: hidden;时,说明登陆框弹出了。 这里采用方法二,因为方法一太麻烦...
2017-02-20
iOS 自动打包
iOS 自动打包使用脚本实现自动打包,网上搜了好多,但是偶比较笨,一直发现不知道怎么使用,看了好久,终于改了个可以使用的,但是最后发现不能用xcrun导出;宝宝心里苦,但宝宝不说😂;接着改,最后终于被我捣鼓成功了,分享给大家一下 Note: 只是简单的基础版本的,这个支持的是没有使用Cocoapods的工程,,脚本见iOS自动打包_shell脚本;如果是使用Cocoapods工程的,可以稍微修改一下,鼓励大家自己试试,试好了顺便分享给我,😉 使用方法: iOS自动打包-sh的使用:下载压缩包后,解压,里面有后缀为.sh的文件和.plist的文件,将这两个文件放到.xcodeproj所在的文件夹下,然后ProjectName和SchemeName,打开terminal,运行这个.sh文件即可。 然后来说一下调试中遇到的问题: 文件路径的问题 Scheme的问题,我不知道自己的sheme是什么?或者我的sheme明明就是这个但是提示我找不到 脚本运行完,发现所有的文件都变成Modified状态,整个人顿时就不好了。。。 问题一:路径的问题因为是shell脚本,偶会的本...
2020-08-19
iOS NSTimer不走的问题
iOS NSTimer不走的问题背景这个版本上线后,突然发现埋点数据直线下降,调试后发现是定时器上传的方法没有走,但是定时器的方法本期并没有修改过。代码如下 123456- (BOOL)initTimer() { self.uploadTimer = [NSTimer scheduledTimerWithTimeInterval:timerInterval target:self selector:@selector(handleUpload) userInfo:nil repeats:YES]; [[NSRunLoop currentRunLoop] addTimer:self.uploadTimer forMode:NSRunLoopCommonModes];} 排查这个handleUpload方法,怎么都不会走,但是在之前的版本中就是好的,排查了之后发现,是外层调用的地方加了一层异步。即调用的地方变成了 12345dispatch_async(dispatch_get_global_queue(0, 0), ^{ i...
2019-09-15
批量图片压缩 & 替换
批量图片压缩 & 替换背景最近产品提了个需求,要求把包压缩一下,而项目是OC&Swift混编,这期还加上了RN,还要包不能增大。脑壳疼。。。。他则不上天呢。但需求出来了,还是要做的。所以就想了下面几个方法: 先用LSUnusedResources分析项目中无用的图片和类,删除; 然后对项目中的图片进行压缩替换; 再接着分析linkMap文件,找出大的文件进行优化。 基于clang插件的一种iOS包大小瘦身方案 实现这篇就是关于第二步的,项目里大约有1600多张图片,之前几次压缩都是按大小排序,然后把大于10kb的图片一个个上传到tinypng上压缩,再下载替换。tinypng web最多支持一次20张,每次上传压缩,然后等,就问问烦不烦。。。。 图片批量压缩so,这次我终于受不了,我要找批量压缩的,还真给我搜到了图片批量压缩脚本(Python),这种使用方式GitHub上已经写得很清楚了,每月可以500张批量压缩,然后有一个输出文件夹: 使用这个脚本的时候,要注意: 安装Python 安装click和tinify 到此处申请 API key: https...
2021-08-02
iOS 启动时间优化
iOS 启动时间优化——相关背景iOS的启动时间优化有很多相关的文章,本来不打算写,但是总归是自己整理一遍印象更深刻。这里打算从原理-实践-面试相关三个方面来入手。首先要理解APP启动的原理,启动做了什么?然后针对启动过程中的事件哪些是开发可以进行优化的,去实践?最后则是,面试相关,与启动优化相关的面试有很多,笔者打算列举一下,分别涉及到启动的哪些问题。 启动原理启动分为冷启动和热启动。冷启动指的是APP进程被杀掉后,从零打开;热启动指的是,APP进入后台,再切换到前台唤起到过程。这里通常说的启动优化,指的是冷启动优化。(Ps: 这里某些版本会出现,刚杀掉的APP,立即再次打开,会直接闪退的问题,是系统的Bug)。 冷启动的过程分为main函数之前(pre-main)和main函数之后两个阶段。 pre-main阶段就如很多文章说的: pre-main阶段的过程分为dylibs loading ——> rebase/binding ——> ObjC setup ——> initializer四个部分。每个部分吧啦吧啦…但每次问到这个时候,死记硬背出来真的累人...
2016-06-01
半透明效果的实现
类似下图这样一个半透明效果的实现: 起因:我今天在推酷上面闲逛的时候,看到了这样一篇文章用 Swift 编写面向协议的视图,里面介绍的是一个颤动的效果,分别采用直接实现、category实现以及protocol extension实现,来表现swift面向协议的强大,推荐大家仔细看看。 在文章的末尾,附有一个链接,是透明视图控制器及背景遮罩,我点开看了一下,是一个采用protocol extension实现的类似图一的半透明的实现;只不过是swift的。 然后我仔细回想了一下,类似这种效果的需求在开发中不少,但是每次我实现都是自定义一个view然后用动画效果实现,现在想想这样不但繁琐,而且很low,有木有。 然后想想上面的那个实现,我把它翻译成OC的怎么样,能不能使用,OC里面是没有protocol extension的,那我就直接用category实现,至少比每次实现都重写方便。 then,here is the result. DimBackground-OC里面很简单,使用的时候只需要导入这两个文件,然后使用即可。 但是需要注意的是,要present出来的那个界面,这...