/SwiftPractice

Learn swfit practice project.学习swift3.0的练手项目,每个项目都是纯代码编写,绝不拖控件。准备写40个项目。

Primary LanguageSwift

SwiftPractice

Learn swfit practice project.

项目1:SimpleClock

一个简易的,具有“开始,暂停,结束,继续”功能的计时器。熟悉timer的使用。

image

项目2:CustomFont

切换显示字体。主要是熟悉导入字体的方法,熟悉tableview的使用。

image

项目3:PlayLocalVideo

播放本地视频。主要是熟悉本地视频的播放,tableview的使用,如何自定义tableviewcell等。

image

项目4:WelcomView

简单的欢迎页实现。主要熟悉UIScrollView、UIPageControl的使用。

image

项目5:PictureBrowse

简单的浏览图片。主要熟悉UICollectionView的使用,流式布局,自定义UICollectionCell等。

image

项目6:CurrentLocation

简单的定位。主要是熟悉iPhone定位的使用,位置的解析。

项目7:SystemRefreshControl

简单的使用系统自带的刷新控件。主要是熟悉系统自带的刷新控件使用。

image

项目8:GradientColor

简单的梯度显示颜色。主要是熟悉怎么显示有梯度的颜色。

image

项目9:ImageScroller

利用ScrollView简单的实现图片缩放功能。主要是熟悉怎么使用ScrollView的缩放功能。

image

项目10:VideoBackground

利用视频做背景的简单实现。主要是熟悉AVPlayerViewController的使用,以及达到用视频做背景的效果。

image

项目11:ColorProgress

简单的实现彩色的进度条。主要是熟悉swift的继承,CALayer动画的实现。

image

项目12:TableHeaderView

一个TableHeaderView跟随着下拉放大图片,上拉缩小图片功能。主要是利用ScrollView的contentInset属性,实现该效果。

image

项目13:AnimateTableView

TableViewCell动画。熟悉TableViewCell动画的实现。

image

项目14:WaveView

波浪形的动画。熟悉CAShapeLayer、CADisplayLink的使用。

image

项目15:ShapeLayerAnimation

采用UIBezierPath和CAShapeLayer配合,实现动画效果。加深对CAShapeLayer的熟悉,熟悉CABasicAnimation动画的实现。

image

项目16:PickerView

用PickerView实现的时间选择器。熟悉PickerView的使用。

image

项目17:AnimatedSplash

关键帧动画实现类似twitter加载首页效果。熟悉关键帧动画CAKeyframeAnimation的使用。

image

项目18:ChildVCTransition

转场动画最简单的实现方式。利用ViewController的transition方法,实现VC的子VC之间跳转的转场动画。

image

项目19:CustomPushTransition

实现push、pop动画。该转场动画的实现方式比较适合用导航栏push、pop的时候用,UITabbarController等也适合。

image

项目20:MusicPlayer

一个简易的音乐播放器。熟悉FileManager对文件的操作(复制、粘贴、查找等),AudioPlayer播放音乐,do-catch处理throws抛出的异常等。

项目21:TumblrMenu

模态视图的呈现。熟悉了模态视图的呈现方法,呈现模态视图自定义转场动画,修改系统按钮图标、标题位置的方法。

image

项目22:LoginView

登录页面。熟悉如何监听键盘show和hidden通知,自定义Log使其在测试时打印输出,发布时不输出,提高app性能。

image

项目23:URLImage

加载网络图片。熟悉URLSession下载图片,发送GET请求,GCD实现线程切换等操作。

image

项目24:CollectionViewAnimation

集合视图动画。熟悉CollectionView使用,自定义cell,闭包使用,结构体自定义等。

image

项目25:SwipeableCell

TableView左划出现操作菜单功能。熟悉实现方式,AlertControl的使用等。

image

项目26:SortableCollectionView

可拖动的CollectionViewCell。没有利用iOS9系统提供的方法,该实现方式适用用iOS8以上系统。熟悉协议、代理的使用。

image

项目27:CustomCollectionLayout

自定义CollectionLayout,实现环形、线性、瀑布流布局。熟悉协议代理,如何自定义CollectionView布局等。

image

项目28:MosaicLayout

使用第三方实现拼接形式的CollectionView。采用了Swift、OC混编的模式,使用了cocoapods。熟悉了如何混编Swift和OC。

image

项目29:BasicAnimation

基础动画。熟悉简单的基础动画实现,闭包循环引用解决等。

image

项目30:SQLite

使用FMDB对SQLite数据库进行操作。熟悉FMDB使用,数据库增删改查等操作。

image

项目31:TabbarController

使用TabbarController。熟悉TabbarController的使用,切换时实现动画效果等。

image

项目32:Regex

使用正则表达式,获取维基百科上面的**省市别名。熟悉iOS中如何使用正则表达式,保存数据到plist文件中等操作。

image

项目33:SearchVC

搜索功能的实现。熟悉UISearchController的使用,利用拼音首字母或汉字进行搜索。

image

项目34:QRCode

二维码扫描。实现摄像头扫描和图片扫描两种方式。熟悉iOS如何实现。

image

项目35:MultilevelMenu

两级菜单的实现。采用系统的tableview实现两级TableView。并且学习了如何通过扩展给系统类增加计算属性。

image

项目36:SpeechRecognition

语音识别功能,iOS10新出API,学习如何使用。

image

项目37:NetPictures

福利项目,从网上获取的MM图片和资料。该项目用了第三方AFNetworking、MBProgressHUD、MJRefresh,很多时候,我们的项目中会有大量的第三方,不是我们懒,而是已经有非常好,很稳定的轮子,就不用自己造轮子了。该项目主要是给一直关注SwiftPractice的朋友发一波福利😊。

image

项目38:NightMode

夜间模式的简单实现方式。实现最简单的夜间模式正常模式的切换功能。

image

项目39:CookBook

一个简单的菜谱app。基本功能已经全部具备。

image