ios tableview单选

本文介绍了如何在Objective-C中设置默认选中项,并实现滑动时选择项的变化效果,包括记录上一次选择的行、更新当前选择的行样式以及更新默认选择项。
 //设置默认选中
<code class="hljs objectivec has-numbering">    <span class="hljs-built_in">NSIndexPath</span>*defaultIndexPath = [<span class="hljs-built_in">NSIndexPath</span> indexPathForRow:<span class="hljs-number">0</span> inSection:<span class="hljs-number">0</span>];
    [<span class="hljs-keyword">self</span> tableView:<span class="hljs-keyword">self</span><span class="hljs-variable">.tableView</span> didSelectRowAtIndexPath:defaultIndexPath];</code>
<code class="hljs objectivec has-numbering"></code> 
<code class="hljs objectivec has-numbering">- (<span class="hljs-keyword">void</span>)tableView:(<span class="hljs-built_in">UITableView</span> *)tableView didSelectRowAtIndexPath:(<span class="hljs-built_in">NSIndexPath</span> *)indexPath{         <span class="hljs-comment">//当前cell row  </span>         <span class="hljs-built_in">NSInteger</span> newRow = [indexPath row];         <span class="hljs-comment">//记录上一次cell row</span>         <span class="hljs-built_in">NSInteger</span> oldRow = (<span class="hljs-keyword">self</span><span class="hljs-variable">.lastIndexPath</span> != <span class="hljs-literal">nil</span>) ? [<span class="hljs-keyword">self</span><span class="hljs-variable">.lastIndexPath</span> row] : -<span class="hljs-number">1</span>;        <span class="hljs-keyword">if</span> (newRow != oldRow)          {               <span class="hljs-comment">//选中cell</span>               CustomTableViewCell *newcell =  [tableView cellForRowAtIndexPath:indexPath];               newcell<span class="hljs-variable">.selectImage</span><span class="hljs-variable">.hidden</span> = <span class="hljs-literal">NO</span>;               <span class="hljs-comment">//取消上一次选中cell</span>              CustomTableViewCell *oldCell = [tableView cellForRowAtIndexPath:<span class="hljs-keyword">self</span><span class="hljs-variable">.lastIndexPath</span>];               oldCell<span class="hljs-variable">.selectImage</span><span class="hljs-variable">.hidden</span> = <span class="hljs-literal">YES</span>;          }            <span class="hljs-keyword">self</span><span class="hljs-variable">.lastIndexPath</span> = indexPath;}</code>
先看效果: https://pan.quark.cn/s/c7070e7537b1 [!NOTE] 每到答辩季我就会喜获stars,谢谢大家的支持! 欢迎推广传播本repo(https://.com/atomiechen/THU-PPT-Theme),也欢迎贡献变体,提供更多选择 清华简约主题PPT模板 Repo stars 2020年春夏之交,答辩期间很多同学都在寻找清华主题的答辩模板。 一方面有使用LaTeX制作Beamer的模板(见Overleaf上的模板THU Beamer Theme),另一方面民间也存在着一些PPT模板。 很多人可能不适应Beamer的使用(主要是内容和排版设计不是可见即所得,定制有门槛),以及我找到的PPT模板也都不太好使(要么图案设计太复杂、不好看,要么没有制作成PPT母版导致每次使用都要复制粘贴+微调,不方便)。 我制作了清华简约主题的PPT模板,后续有新的设计我会逐渐加入,也欢迎有兴趣有想法的朋友们添砖加瓦! 内容 所有模板均为 文件。 此外也提供转换脚本用于 Pandoc自动生成PPTX。 各个版本的修改历史见 CHANGELOG.md。 下载 推荐直接从 Releases 下载最新发布版。 也可以在 仓库 单独下载所需文件。 效果 16:9比例,v1留边、v1顶边、v3留边白底、v3顶边白底: demo 16:9比例,其他风格模板:v1扁平、v2扁平、v1暗光 demo2 其他变体设计参见 variants/README.md。 使用方式 可以基于所提供的文件自行修改内容,也可以在新建的PPT文稿中应用该模板。 后者在 MS Office 2019 For Mac 的 PowerPoint 里的具体使用方式为:首先选择幻灯片尺...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值