swift自学笔记(二)UI控件
在写控件之前先来说一下swift中声明变量时!和?的区别;并且swift都属性基本上都是以点的方式来表达:
!和?d的区别这里在lable变量加了一个“?”,由于lable是可选变量,所以也可能有值也可能是nil。
使用self.lable!是声明此时self.label里面一定有值无论什么情况下都调用后面的.text赋值方法。
而使用self.view?是声明此时并不确定self.view里是否有值,所以只在view有值时调用后面.addSubview方法。
这样做的目的一是让代码更明确, 二是给编译器提供更多线索,在编译时发现更多潜在错误。Swift显然是一门非常明确,需要开发者先想清楚再编程的语言,秉承了Apple一贯的作风
1.UILabel
UILabel2.UIButton
UIButton点击事件的实现(顺便写个UIAlertController控件):
button点击事件3.UIImageView
UIImageView4.UISlider
UISlider5.UIWebView
UIWebView6.UISegmentedControl(新添的选择项)
UISegmentedControl7.UISwitch
UISwitch8.UITextField
UITextField9.UIScrollView
UIScrollView10.UISearchBar
UISearchBar11.UIPageControl
UIPageControl12.UIProgressView
UIProgressView13.UITextView
UITextView14.UIActivityIndicatorView
UIActivityIndicatorView15.UIActionSheet(一般都是点击后调用这个方法)
UIActionSheet接下来说一些需要代理来实现的控件:
1.先来看下一个空的swift 文件构造:
swift 文件构造这里注意:当写上数据源的代码时比如(UICollectionViewDataSource、UIPickerViewDataSource等时会报错)
数据源报错这时候只要在下面写上数据源方法就行
2.UITableView
写上代理和声明成员变量 创建tableView 实现代理和数据源方法3.UIDatePicker
创建UIDatePicker4.UIPickerView
创建UIPickerView 实现代理和数据源方法5.UICollectionView
创建UICollectionView 实现代理和数据源方法以上就是我Swift控件的学习内容,下一节是Swift和OC在一个项目中如何实现混编。