在iOS开发中,我曾遇到这样一个问题,很久都未能解决,就是在cell上添加一个button,当我们点击button时,它是没有高亮效果的,除非我们长按button,我这里整理一下解决这个问题的方法 原文链接: http://stackoverflow.com/questions/19256996/uibutton-not-showing-highlight-on-tap-in-ios7 解决方案一: - (void)viewDidLoad { [super viewDidLoad]; s
在移动应用实际开发过程中,往往会有多个scrollview嵌套的界面需求,这种需求已经司空见惯,解决方案也多种多样,这里就介绍一下我认为最优的解决方案。
但是addSubview的UIScorllView并不能直接响应touchesBegan和touchesEnd事件。
在滚动过程当中,其实是在修改原点坐标。当手指触摸后,scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么scroll view 发送 tracking events 到被点击的subview。假如在计时器到点前发生了移动事件,那么 scroll view 取消tracking 自己发生滚动。
上面这个问题的答案也是我写这篇文章的初衷,在最近给游戏添加一些列表的时候,对比着应用了一下他们两个,在它们两个之间的优劣势之间进行取舍,就有了这个问题的答案。
2017年国庆后lucio开始由Android开发转做iOS开发了,在这之前lucio可是什么苹果产品都没用过的小白,这里po一下小白的iOS开发学习历程,包括看的书、视频、文章,看看lucio如何从小白快速(并不快┓( ´∀` )┏其实)入门iOS开发的。
UIWebView是iOS SDK中一个最常用的控件,在PhoneGap中,默认也是使用UIWebView作为默认视图显示我们的HTML应用的。
如果你有志于将iOS开发作为职业,或者已经是一位iOS开发者,那么你应该听说过唐巧的名字。唐巧,2012年从网易有道离开参与创业, 目前是猿题库iOS高级研发工程师。难得的是,他本身是一线的iOS开发者,同时又对iOS开发在国内的布道做了不少的工作,身影活跃于博客、微博、微信公众账号等地。从2011年以来,唐巧开始在博客分享自己写的iOS开发技术文章,CocoaChina 也曾多次转载过他的博客文章,后来他成为InfoQ兼职编辑,除了发表技术文章之外,还负责整理《iOS移动开发周报》,至今已有35期,他的微博和微信公众账号粉丝都超过1万,可以说是iOS开发领域的“大V”。并且他的新书《iOS开发进阶》已经和大家见面,也引得他的粉丝的一份热潮
UIScrollView是iOS开发中经常用到的UI控件,像图片轮播之类的效果都可以用UIScrollView来实现,当然轮播什么的网上有很多教程了,我就不多说了。今天主要讲三个跟交互有关的效果(稍微有点标题党啊,其实也没有多进阶……),也不是直接用的UIScrollView,而是它的子类UITableView和UIWebView。先看一下效果图吧,都来自我自己的项目:
好长时间没为大家带来iOS开发干货的东西了,今天给大家分享一个头条新闻客户端各个类别进行切换的一个示例。在Demo中对所需的组件进行的简单封装,在封装的组件中使用的是纯代码的形式,如果想要在项目中进行使用,稍微进行修改即可。 废话少说,先介绍一下功能点,下图是整个Demo的功能点,最上面左边的TabBarButtonItem是用来减少条目的,比如下图有三个按钮,点击减号会减少一个条目。右边的为增加一个条目。点击相应的按钮是切换到对应的表视图上,下方红色的是滑动的指示器,同时支持手势滑动。运行具体效果
移动开发真正火起来其实就是最近这几年,iOS 开发技术因为发展也就才这么几年,所以值得做的事情还有很多,这就造成了每年苹果的 WWDC 都会推出一堆新的特性和 API。整体上来说,这对业界是好事情。在技术更新过程中产生一些坑,是在所难免的事情。所以希望大家都能用一个比较平和的心态去搞定这些坑。
远古的iPhone3和iPhone4时代,设备尺寸都是固定3.5inch,没有所谓的适配的问题,只需要用视图的frame属性进行硬编码即可。随着时间的推移,苹果的设备种类越来越多,尺寸也越来越大,单纯的frame已经不能简单解决问题了,于是推出了AutoLayout技术和SizeClasses技术来解决多种设备的适配问题。一直在做iOS开发的程序员相信在下面的两个版本交界处需要处理适配的坎一定让你焦头烂额过:
前几天发布了一篇iOS开发之多表视图滑动切换示例(仿"头条"客户端)的博客,之所以写这篇博客,是因为一位iOS初学者提了一个问题,简单的写了个demo做了个示范,让其在基础上做扩展和改进。被CocoaChina中iOS模块所收录实在出乎我的意料,链接地址(http://www.cocoachina.com/ios/20150706/12370.html),在CocoaChina上看了下面的评论,Demo的问题确实有,优化和改进的空间也是蛮大的。首先内存问题是必须考虑的,不能把这么多的TabalView实
自己目前大四汪一枚,自学iOS开发一年左右,先后学习了swift和Objective-C。由于是自学(而且全院貌似就我一个人在学),深知自学之痛。所以在此分享一下我的学习路程,希望可以帮到大家。 个人以为,从iOS开发小白到iOS开发高级工程师,可以分成以下四个阶段: 1.熟悉语言语法阶段(小白) iOS开发主要有两种语言:Objective-C和swift。建议先学Objective-C,因为目前国内80%~90%的公司都在用Objective,因为产品迭代原因,最近一两年还不会大量迁移到swift。暂且
做iOS开发,不可避免的会遇到UIScrollView的嵌套问题,之前也曾遇到过,吭哧吭哧做完了,效果不理想,和产品大战好几回合,就那样了。不可避免的,又一次遇到了这个问题,就和同事一起研究了一下,彻底解决了这个问题。写了一个demo,以后再遇到就直接用了。今天主要是总结一下实现难点。免得自己过段时间又忘了,也给有同样困扰的你一个思路。
http://blog.csdn.net/lvxiangan/article/details/20939379
好了,说正事,对于ios开发我没接触,不是很了解,百度了半天,差不多就是UIScrollView的把。如果不对,请指证。具体什么效果呢,我刚才拿朋友的iphone手机看了下,iphone的设置界面,第一个列表往下拉可以继续滚,上拉同理。不过android好像没有自带的这种情况。
@property(nonatomic)CGPoint contentOffset;
这里筑梦师,是一名正在努力学习的iOS开发工程师,目前致力于全栈方向的学习,希望可以和大家一起交流技术,共同进步,用简书记录下自己的学习历程.
前言 iOS开发笔记(一) iOS开发笔记(二) iOS开发笔记(三) iOS开发笔记(四) 《开发笔记》系列记录一些开发中遇到的问题以及思考。 本文主要回答四个问题: 1、对MVVM框架的了解有哪些? 2、TextKit的认知与运用? 3、autorelease的原理是什么?weak修饰符是什么意思? 4、performSelector为什么会有内存泄露的提示? 正文 1、MVVM的一些看法 对MVVM(Model-View-ViewModel)的尝试源于用angular-js开发。 用过MVC
http://jingyan.baidu.com/article/c1a3101e8b34c2de656debbe.html
blurView.backgroundColor= [UIColorcolorWithRed:0green:0blue:0alpha:0.3];
无论是对于公司还是开发者或设计师个人而言,面试都是一项耗时耗钱的项目,本文作者CameronBanga从编程、设计、AppStore等各个方面对iOS开发者及设计师在面试时可能会遇到的问题进行了筛选与汇总。一方面,能够帮助HR在短时间内获取更多反馈信息,更好地甄选合适人选,而iOS开发者及设计师在寻找相关工作时,也可作为参考,为面试做好万全准备。
两种方式,一种是使用系统自带的,按规则定义启动图片名称即可,显示为1秒,要想延长时间,用[nsthread sleepForTimeInterval:5.0] ,另一种就是自定义uiivew,加到window中去。
关于iOS开发面试,不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的好机会。
创建一个Super父类,并继承SPPageMenuDelegate ,UIScrollViewDelegate
TableView是ios开发中经常用到的控件,这里统一记录一下开发中遇到的常用小技巧,不断探索更新,也希望大家可以告诉我更多常用的小技巧啦~一起进步。
笔者总结了自己在拥有Android开发的相关基础后入门iOS开发时遇到的点点滴滴给其他想入门iOS 开发的Android开发的一些参考,少走一些弯路,快速上手iOS开发;文章会以iOS 和 Android的开发工具,语言,工程文件和启动类的对比为主线。两者的主要对比概览
16年上半年在帮老师,帮外面随便做点东西以便得到些生活费养活自己。下半年去外面公司待了一段时间,然后选择回来帮自己做个东西,历时三个月,独自完成安卓及IOS版本app的开发部分。
目前iOS开发中大多数页面都已经开始使用Interface Builder的方式进行UI开发了,但是在一些变化比较复杂的页面,还是需要通过代码来进行UI开发的。而且有很多比较老的项目,本身就还在采用纯代码的方式进行开发。
日 历是iOS开发中有时会用到的一个UI控件,网上开源的代码也很多,我浏览过一些,大致有两种模式,一种是日历的逻辑由开发者自己实现,通过计算闰年与平 年来确定月份天数,另外一种模式是通过NSDate这个时间类,来获取日历的信息。我个人认为后一种更加安全,代码性能也会更加优质,下面就是我用这种模 式实现的一个日历控件。
UIScrollView在开发中是一个非常常用的控件,UIScrollView具有水平、垂直滚动和缩放效果。但是尽然没有响应单击事件这个事件。而这个事件在日常的交互中是非常需要的。比如当用于单击或轻触图片的某个位置时,给于一些交互性提示。 下面我将用例子说明一下如何给UIScrollView添加一个单击的响应。 代码如下: 添加一个自定义的UIScrollView,命名:UITouchScrollView UITouchScrollView.h代码如下 #import <Foundation/Foundat
在iOS开发中,有一些技巧可以提高程序猿的开发效率。 1,Xcode真机调试 Xcode 7推出之前,想要真机调试,iOS开发者必须花$99购买苹果开发者账号,而且步骤繁琐,需要下载证书认证。随着苹果公司推出了Xcode 7之后,大幅度的简化了真机调试的步骤。但是如果要测试推送等,还是需要证书的。 第一步:准备Mac电脑,Apple ID, iPhone手机,Xcode 集成开发环境; 第二步:打开Xcode选择屏幕左上角Xcode->Preferences->Account。 第三步,点击左下角的+
UIScrollView UIScrollView全部API学习。 //1.设定滚定条的样式 typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) { UIScrollViewIndicatorStyleDefault, // black with white border. good against any background 黑白边框 UIScrollViewIndicatorStyleBlack, // black only. small
但是团队的其他的小伙伴还有依然使用 Xcode8进行开发的,这就导致了低版本的 Xcode8无法识别我写的代码,在编译的时候就包错误了。
A table view is an instance of theUITableView class in one of two basic styles, plain or grouped. A plain table view is an unbroken list; a grouped table view has visually distinct sections. A table view has a data source and might have a delegate. The data source object provides the data for populating the sections and rows of the table view. The delegate object customizes its appearance and behavior.
方案一:这个跟UIScrollView的一个属性delaysContentTouches有关。
iOS开发中经常会遇到上方有一条Tab切换导航栏,点击Tab可以切换下方的页面显示。当Tab栏内元素显示超出一屏时就需要滚动显示,用户点击靠近边缘的item时就需要把屏幕外的元素滚动到屏幕内,以供用户选择,如果不滚动,那么用户就认为他点击的可能就是最后一个item,影响用户体验。具体实现就是scrollView。
前言 本文源自实际开发中的需求,核心的要求有几个: 1、多个UITableview要支持左右滑动; 2、点击Tab也要有UITableview的滑动切换效果; 3、每个UITableview单独
面试 iOS 开发时,切入点很重要,不同的切入点会导致不同的结果,没有找到合适的切入点也无法对应聘者有一个全面的了解。所以这份面试问题列表更多的是提供方向,没有固定的答案,而且可以根据应聘者的回应引出更多有意思深层次的讨论。
前言 定时器的使用是软件开发基础技能,用于延时执行或重复执行某些方法。 我相信大部分人接触iOS的定时器都是从这段代码开始的: [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(action:) userInfo:nil repeats:YES] 但是你真的会用吗? 正文 iOS定时器 ---- 首先来介绍iOS中的定时器 iOS中的定时器大致分为这几类: NSTimer CADisplayLink GCD定
这两种方法都是创建一个定时器,区别是用timerWithTimeInterval:方法创建的定时器需要手动加入RunLoop中。
为了更好地将简书上面的iOS文章分类,以方便我们日后的集中式强化学习,这里整理了二十多个专题以供大家查阅!
下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件。 SVPullToRefresh - 下拉刷新控件。 MJRefresh - 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。具体使用看“使用方法”。(国人写) XHRefreshControl - XHRefreshControl是一款高扩展性,低耦合度的下拉刷新,上提加载更多的组件。(国人写) CBStoreHouse
Xcode10是默认选中的最新的New Build System(Default),在这个编译系统的环境下,不允许多个info.plist
iOS中常用的Networking技术主要包括HTTP(s)及TCP,前者主要的API封装在URL Loading System中,后者API主要封装在CFNetwork的Stream(ReadStream&WriteStream)中。
经过几年的打磨和多次的重构,我的iOS开源界面布局库MyLayout的star数量终于在2018年8月6号破3000了!有图为证:
为了良好的交互体验,相信大家在对待scrollView无数据时的提示页都会使用一些第三方来定制,最典型的就是使用DZNEmptyDataSet。但是每个界面都写一堆与DZNEmptyDataSetDelegate,DZNEmptyDataSetSource相关的代码就不太好,那一般情况下自然的就会采用继承的方式来避免。而Swift除了可以面向对象编程,它还可以面向协议编程。那可不可以也用协议来解决情况呢?嘿嘿,这个可以有,那我们接下来就来试试怎么通过协议的方式来避免上述情况,并且实现一行代码添加空白页功能
项目中使用到了UILable来展示相关的文本内容,但内容的大小不确定,有可能会超过屏幕的大小,因此需要在外层嵌套一个UIScrollView来保证内容可以被完全展现给用户,在UILabel确定相关的高度后,再通过设置UIScrollView的contentSize 来限定UIScrollView的滚动范围,保证全部内容可被浏览到
领取专属 10元无门槛券
手把手带您无忧上云