- 🌱 15年工作至今,有独立开发以及团队开发经验以及2-8人的移动端团队管理经验,目前在一家区块链交易所公司任职,负责iOS端App的开发工作(目前任职公司项目技术栈:OC,Flutter,RN)。
- 🔭 技术栈:OC,Swift,React-Native,WXJS,Flutter ...
Languages and Tools
✍️一分钟集成类似抖音,新浪微博,腾讯视频,网易新闻,今日头条等常见的标题栏样式,api灵活易扩展,支持Cocoapods和Masonry布局,支持ChildController的完整生命周期
License: MIT License
期待swift版本
运行demo ,设置了rightView 标签数量设置为前六个,然后页面一直右滑,顶部的titleView不能滚动到最后一个标签了,被rightView挡住了。
RT,谢谢,有解决方案吗?大佬!
能不能支持懒加载,不用一下子把全部页面全部加载出来
CMPageContentCell调用setCm_contentView方法时,需要先把上一个_cm_contentView移除,如下:
(void)setCm_contentView:(UIView *)cm_contentView {
if (_cm_contentView.superview) {
[_cm_contentView removeFromSuperview];
}
...
}
考虑到Cell是复用的,如果cm_contentView对应的ViewController没有dealloc的话,就会出现内容的重叠
cell.backgroundColor = [UIColor whiteColor];
这一句代码可以拿掉的,如果加上的话,就会有一个默认白色,对于需要透明显示背景的场景时,达不到预期的效果呢,希望作者紧急修复下,万分感谢🙏🙏🙏
cm_selectedFont
现在有左对齐右对齐,居中显示是拉满屏幕后的居中。能否让标题像左右对齐那样的长度居中显示,而不是拉满整个屏幕后的居中?
首先,感谢作者写出这么一个强大的开源库,很方便使用,👍
另外提一个需求【偷笑】:
类似于腾讯视频一样,切换到动漫之后,显示的是一张图片,并且背景支持设置【背景色,或者图片填充】
大佬,这个能设置当前选中哪个tab吗?或者懒加载有没有开关设置,我需要全部tab都走一遍初始化
大佬你好,我想问下可不可以实现字体放大,并且还带下划线的功能呢?我看字体放大和下划线是在一个属性里。。所以想问下有没有实现方案
你好的,如何才能做tag 红点的效果,发现 没暴露 titleLab ,无法获取到对应的lab,
我只能现在先 通过runtime获取 titleLabels了,作者有时间,优化一下。库写的很棒
遇到一个情况,就是设计师给的效果图中,titleView 是放在一个圆角卡片中的,contentView 是放在下方的另一个圆角卡片中
版本: 0.3.1
看了一下代码, 是有提供 cm_backgroundColor , 但是并没有真正使用这个属性
ps: 另外, 作者最好也能加上一个设置背景图片
感谢开源, 框架写的很好, 也很易用
但是我遇到一个问题
使用场景大致如下
只创建两个 viewController, 每个都使用xib, xib中控件加了约束
问题就出现在这里
childViewControllers 这个数组中的 第一个 controller 页面会偏下(两个页面顶部使用的是同样的约束距离)一个导航的高度
我之所以说第一个,是因为测试过两个以上,或者调换距离,都是第一个页面偏下
可以解决下吗
不支持动态编辑啊,没什么意义。
/* Return an array containing the results of invoking -valueForKey: on each of the receiver's elements. The returned array will contain NSNull elements for each instance of -valueForKey: returning nil.
*/
Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [nan 53.6207]'
设备:iphone6s plus 系统版本:9.3.5
这台手机上会有问题 iOS12、13的都没问题
CMPageContentView.m这个文件里的这个方法
(void)scrollViewDidScroll:(UIScrollView *)scrollView {
if (_isAniming || self.config.cm_childControllers.count == 0) return;
if (self.cm_delegate) {
CGFloat progress = scrollView.contentOffset.x / self.cm_width - floor(scrollView.contentOffset.x / self.cm_width);//应该是这一行的计算出错了
NSUInteger leftIndex = floor(scrollView.contentOffset.x / self.cm_width);
NSUInteger rightIndex = leftIndex + 1;
[self.cm_delegate cm_pageContentViewDidScrollProgress:progress LeftIndex:leftIndex RightIndex:rightIndex];
}
}
不能添加扩展按钮吗,比如今日头条进入我的频道的按钮
issue:子控制器的生命周期不可控,例如当从1滑到2时,2如果已经加载过就不会走viewWillAppear,1也不会走viewWillDisappear,因此你需要增加一个子控制器遵循的协议来手动维护他们的生命周期。
当设置contentmode为左对齐或者右对齐的时候,设置cm_titleMargin的值会造成最左边或者最右边多一段距离,效果非常不好 ,如果只想设置标题之间间距,如何达到这种效果
下载demo
随便一个模式 在切换上面的菜单选择器时会导致下面的tableview高度变化。(通过点击和左右滑动引起不一样的高度变化)
这需要配置什么属性呢
这个参数为什么要必传呢?如果只是想使用titleView这个菜单不可以?
demo运行后,随便进一个,再点「跳转到详情」,返回,导航菜单一片空白,消失了
比如上面三个titleview,下面又有几个这种效果
您好,点击标题,下划线的滑动能替换成自定为的image吗?
比如下划线替换为 一个口向上的椭圆。
作者你好 请问如何设置在默认状态的遮罩颜色, 如果选中和未选中都有遮罩。能不能设置个自定义接口,可以手动像传递tabelViewCell的方式传递当前的选中View和未选中的View
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.