UITableView 的cell 复用机制节省了内存,但是有时对于多变的自定义cell,重用时会出现界面出错(例如复用出错,出现cell混乱重影)、滑动卡顿等问题,这里只简单敲下几点复用出错时的解决办法:

1、取消复用机制(放弃了内存,当数据过多时可能会出现卡顿,所以要慎用)

1a、更换方法,使用indexPath来创建cell

将方法:
- (nullable __kindof UITableViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier; // Used by the delegate to acquire an already allocated cell, in lieu of allocating a new one.
更换为:
- (nullable __kindof UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath; // returns nil if cell is not visible or index path is out of range

具体代码如下图:

1b、设置标识符,给每个cell都有自己的标识

2、删除重用cell的最后一个子视图,进而复用(此方法相较于方法1,节省了内存)

/********************************************  分割线  *****************************************************/

/********************************************  分割线  *****************************************************/

将N久的文档总结的各种杂七杂八的问题放这里,预防丢失,,,

Q0.支付宝rsa_private read error : private key is NULL错误

解决方法:

a.在RSADataSigner.m文件中 搜索代码 [result appendString:@"-----BEGIN PRIVATE KEY-----\n"]; 将其改 成 [result appendString:@"-----BEGIN RSA PRIVATE KEY-----\n"];

b.在RSADataSigner.m文件中 搜索代码 [result appendString:@"\n-----END PRIVATE KEY-----"]; 将其改 成 [result appendString:@"\n-----END RSA PRIVATE KEY-----"];

Q1.linker command failed with exit code 问题

文件添加重复了,找到删除多余的

Q2.真机或打包遇到的UUID问题Your build settings specify a provisioning profile with the UUID "",no such provisioning profile was found

解决:

a.打开工程文件夹,找到xxx.xcodeproj文件显示包内容

b.打开project.pbxproj文件

c.command+f 搜索报错的UUID或PROVISIONING_PROFILE,删除所有含有此UUID的内容

d.再次运行,OK,问题解决

Q3.如何给GitHub的readme 添加图片

1、将图片和代码文件一样添加到GitHub

2、打开你添加的图片,复制其网址链接

3、编辑readme文件中,添加:

  ![image](粘贴你所复制的图片链接)

  例子:

  ![image](https://github.com/DomyZhang/Domy-SegmentCustom/blob/master/pic.gif)

Q4.真机时出现问题:could not find developer disk image

原因:由于真机系统版本过高或者过低,Xcode中没有匹配的配置包文件。所以:

我们可以通过下面这个路径进入配置包的存放目录:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

里面有类似这样的一些文件夹,如果这些文件夹中没有包含我们真机的系统,则不能进行真机测试。可以通过将相应的配置包添加入这个文件夹来解决问题。

Q5.upload包到AppStore时报错:Unexpected CFBundleExecutable Key.The bundle at"xxxxx"

根据错误提示,找到出问题的SDK文件所在位置,删除Executable file(注意别删错了,删除的是报错的文件对应的plist,别把工程的plist删了)

Q5.APP被拒原因

链接:http://www.woshipm.com/pd/117569.html

     http://www.anqu.com/chanye/dongtai/26036.shtml

Q6.提交审核时 IDFA 的选择问题

a.首先你得先知道自己的工程中是否含有广告标示,搜索下文件AdSupport.framework,有的话那就是有了。。

b.在是否有广告的选项中选择是

c.然后,如果你们的确用了广告,就勾选第一个;否则,勾选后两个。

Q7./Applications/Xcode.app/Contents/Developer/usr/bin/copypng emitted error......

原因:图片格式问题(我将JPG直接改为PNG了),但是编译时仍是按照JPG进行编译的,因此报错。(⊙﹏⊙)

Q8.http://www.jianshu.com/p/8a499ee39fe7  git的使用

UITableView cell复用出错问题 页面滑动卡顿问题 & 各杂七杂八问题的更多相关文章

  1. h5页面滑动卡顿解决方法

    解决方式: 给滚动的元素加样式:-webkit-overflow-scrolling: touch; -webkit-overflow-scrolling(允许独立的滚动区域和触摸回弹) 如果值为au ...

  2. 解决页面使用overflow: scroll,overflow-y:hidden在iOS上滑动卡顿的问题

    解决页面使用overflow: scroll,overflow-y:hidden在iOS上滑动卡顿的问题 div{ width: 100%; overflow-y: hidden; -webkit-o ...

  3. 记 页面使用overflow-scroll在iOS上滑动卡顿的问题

    页面使用overflow-scroll在iOS上滑动卡顿的问题 因在做一个滑动的list列表,为某个div使用了overflow: scroll属性. 结果在手机上测试时,ios手机有明显的滑动卡顿问 ...

  4. 腾讯面试题,js处理1千万条数据排序并且页面不卡顿

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 无需SherlockActionbar的SlidingMenu使用详解(一)——通过SlidingMenu设置容器并解决滑动卡顿的问题

    想必很多人都听过这个开源框架,一年前真的是风靡一时.只是它的配置较为繁琐,还需要sherlockActionbar的支持,我这里下载了最新的开源库,并且在实际用套用了AppCompat的官方库,这样就 ...

  6. Android 界面滑动卡顿分析与解决方案(入门)

    Android 界面滑动卡顿分析与解决方案(入门) 导致Android界面滑动卡顿主要有两个原因: 1.UI线程(main)有耗时操作 2.视图渲染时间过长,导致卡顿 目前只讲第1点,第二点相对比较复 ...

  7. android中listview滑动卡顿的原因

    导致Android界面滑动卡顿主要有两个原因: 1.UI线程(main)有耗时操作 2.视图渲染时间过长,导致卡顿 http://www.tuicool.com/articles/fm2IFfU 

  8. 关于iScroll在安卓移动端/chrome模拟移动端上下滑动卡顿问题处理!!!!真实可靠!!!已解决!!!

    滑动卡顿效果 安卓手机打开微信浏览网页,Chrome模拟手机浏览网页,都出现的问题滑动卡顿! 修改代码点: 1.    <style type="text/css">  ...

  9. iOS之tableView性能优化/tableView滑动卡顿?

    本文围绕以下几点展开tableView性能优化的论述? 1.UITableViewCell重用机制? 2.tableView滑动为什么会卡顿? 3.优化方法? 4.总结 1.UITableViewCe ...

随机推荐

  1. 微软将向Linux用户提供SQL Server程序

    微软公司(Microsoft Corp., MSFT)将向Linux操作系统的用户提供旗下一项最赚钱的产品,这是该公司几年前无法想像的举措.这家软件巨头周一表示,将向免费的Linux Server提供 ...

  2. 新应用上线 Snippet

    Snippet 是一款代码片段收集工具,经过一天三夜的开发终于上线了. 应用地址:snippets.barretlee.com 源码地址:barretlee/snippets 由于使用原生 JS 开发 ...

  3. Chrome插件(Extensions)开发攻略

    本文将从个人经验出发,讲述为什么需要Chrome插件,如何开发,如何调试,到哪里找资料,会遇到怎样的问题以及如何解决等,同时给出一个个人认为的比较典型的例子——获取网页内容,和服务器交互,再把信息反馈 ...

  4. 快速Android开发系列网络篇之Retrofit

    Retrofit是一个不错的网络请求库,用官方自己的介绍就是: A type-safe REST client for Android and Java 看官网的介绍用起来很省事,不过如果不了解它是怎 ...

  5. 配置文件Java读写

    今天把配置文件的Bug修复了,总结一下Java配置文件如何读写 配置文件的格式 以.properties后缀结尾,内容不出现空格和双引号 //config.properties Driver=com. ...

  6. Retrofit2.0起步篇

    retrofit 英文名字是改装的意思,也就是说他是对网络请求的一种改装,他不负责进行网络请求,他是对请求方式的一种封装.真正进行网络请求的是okhttp. 以下所有内容在Android Studio ...

  7. Atitit java onvif 开源类库 getProfiles getStreamUri

    Atitit java onvif 开源类库 getProfiles getStreamUri 1. ONVIF Java Library by Milgo1 1.1. https://github. ...

  8. Hyper-V1:创建和管理虚拟机

    Hyper-V是微软的管理虚拟机(Virtual Machine)的服务,在安装Hyper-V功能之后,系统自动安装可视化的虚拟机管理工具:Hyper-V Manager.在同一台物理机上,能够使用H ...

  9. 揭开SQL注入的神秘面纱PPT分享

        SQL注入是一个老生常谈但又经常会出现的问题.该课程是我在公司内部培训的课程,现在分享出来,希望对大家有帮助.     点击这里下载.

  10. Error:const char* 类型的实参和LPCWSTR类型的形参不兼容的解决方法。

    在C++的Windows 应用程序中经常碰到这种情况. 解决方法: 加入如下转换函数: LPCWSTR stringToLPCWSTR(std::string orig) { size_t origs ...