天天看点

【iOS开发-59】LOL案例:单组tabView、alertView样式、实现监听,以及用reloadData数据刷新

案例效果:

【iOS开发-59】LOL案例:单组tabView、alertView样式、实现监听,以及用reloadData数据刷新

(1)先在storyboard中拖拽出一个tableView,然后下面用代码。

——tableView继承自scrollView。所以自然有滚动的特性

——最基本的还是数据转模型。以及对cell的赋值

——而cell的赋值那一块,为了优化性能。我们先从tableView的缓存中查找有无被缓存的cell。假设有。直接取出,假设没有再创建,这样提高性能。

——这个缓存池是tableView自带的,当滚动的时候。cell不在视线范围内时,这个cell就被放到缓存池里了。

(2)添加点击弹出alert的效果。而且能够改动名字

——由于用到监听tableView点击,所以须要引入协议

——由于用到监听用户点击了Alert里的哪个button。所以须要协议

而且须要设置代理(Alert的代理。在创建的时候直接指定为self就可以)

——监听tableView被点击时,须要弹出一个带有textField的框。能够用alert.alertViewStyle属性设置,而且把这个模型里面的名字赋值给文本框显示出来。

——此外。还须要把是第几个模型,这个数字记录下来,在下一个方法监听点击alert哪个button的哪个里面须要用到,正好记录到alert的tag中。

——监听是否点击的时“确定”button。假设是,则先获取文本框文字,然后利用alert.tag找到相应的数据模型,用这个获得的文字替换原来的模型数据,最后刷新一下tableView,仅仅有改动数据模型。才干彻底改变tableView的显示结果,否则仅仅改动tableView,等又一次载入的时候还是会显示原来的数据。由于数据模型没有改动。

——思想是:用数据模型控制视图,即改动了数据模型,视图的呈现自然跟着改动。

——这里用到的知识点相对较多,涉及到tableView的reloadData方法。

——涉及到alertView得样式设置方法。

——还涉及到使用tableView和alertView的代理来实现监听。