首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Swift UITableViewCell边框在删除时变得有角度

是因为UITableViewCell的默认删除样式是带有角度的。当我们调用deleteRows(at:with:)方法删除某一行时,UITableViewCell会根据默认的删除样式进行动画效果的展示。

要解决这个问题,我们可以通过自定义UITableViewCell的删除样式来改变边框的角度。具体步骤如下:

  1. 创建一个自定义的UITableViewCell子类,例如CustomTableViewCell。
  2. 在CustomTableViewCell类中重写layoutSubviews()方法,该方法会在cell布局发生变化时被调用。
  3. 在layoutSubviews()方法中,设置cell的contentView.layer.cornerRadius属性为0,这样就可以去除边框的角度。
  4. 在UITableViewDelegate的willDisplay(_:forRowAt:)方法中,将要显示的cell的删除样式设置为.none,以避免默认的带角度的删除样式。

下面是示例代码:

代码语言:txt
复制
class CustomTableViewCell: UITableViewCell {
    override func layoutSubviews() {
        super.layoutSubviews()
        contentView.layer.cornerRadius = 0
    }
}

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
    // ...

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "CustomCell", for: indexPath) as! CustomTableViewCell
        // 配置cell的内容
        return cell
    }

    func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
        cell.selectionStyle = .none
    }

    // ...
}

通过以上步骤,我们可以解决UITableViewCell边框在删除时变得有角度的问题。

推荐的腾讯云相关产品:腾讯云移动开发平台(https://cloud.tencent.com/product/mpp)可以帮助开发者快速构建移动应用,提供丰富的移动开发工具和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • iOS开发常用之摄像照相视频音频处理

    删除任何你不想要的记录段。可以使用任何视频播放器播放片段。保存的记录可以在序列化的NSDictionary中使用。(在NSUserDefaults的中操作)添加使用Core Image的视频滤波器。...边录音边转码 - 一边录音,一边录音成的wav格式音频文件转码成amr音频格式。只支持真机运行调试。...FSVoiceBubble - 一个轻量级播放录音音频的气泡:1.支持短时间的音频播放(支持网络音频); 2.播放时的声波动画; 3.自定义包括声波的颜色,气泡的背景等。...HTY360Player - 一款提供在iOS中使用360度无死角拖拽视频进行不同角度播放的视频播放器。...TBPlayer - 视频变下变播,把播放器播放过的数据流缓存到本地,支持拖动。采用avplayer。

    2.8K51

    MyLayout&TangramKit 的重大升级!

    Swift1.4.0: https://github.com/youngsoft/TangramKit 这次升级的主要目的是为了和AutoLayout结合的更加紧密。...那就是当添加或者删除子视图时以及调整了某个子视图的位置和尺寸时就需要重新调整父视图的自适应约束设置。...那就是一旦在容器视图中添加子视图时就需要重新调整容器视图的右边界和下边界的约束依赖。这就需要将旧的边界约束依赖记住,并在设置新的边界依赖前删除旧的约束依赖。...在上面的第1节中有介绍如何将一个容器视图的尺寸设置为自适应,而一般情况下在编写UITableViewCell的布局代码时,都将所有的子视图添加到contentView这个视图中,因此要实现UITableViewCell...因为布局视图重载intrinsicContentSize方法,因此当将某个布局视图作为UITableViewCell的子视图时如果想使用布局视图的尺寸自适应的能力,只需要将布局视图的尺寸设置为wrap即可

    2.1K20

    iOS 面试策略之语言工具-Xcode使用

    [1240] Xcode 诞生于 2003 年,发展至今,已经可以支持除 Objective-C 和 Swift 之外其他 6 种语言:C、C++与 Objective-C 密不可分;自动化方面则多用...最新的 Xcode 采用完全由 Swift 重写的 Souce Editor,在代码修改、补全、模拟器运行方面有了很大提升。目前最大的缺点是稳定性不够。...本节将从基本的 Xcode 开发知识开始,逐渐深入到 Intruments 性能分析和 LLDB 调试,针对 Swift 专门设计的 Playground 也将有所涉及。 Xcode 调试 1....所以优化的手段也有了,简单来说就是: 减少动态库数量,dylib loading time 会下降,苹果的推荐是动态库不要多于 6 个 减少 Objective-C 的类数量,例如合并或者删除,这样可以加快动态链接...进入页面后发现 Leak Checks 中出现内存泄漏时,我们可以将导航栏切换到 call tree 模式下,强烈建议在 Display Settings 中勾选 Separate by Thread

    1.7K20

    TableView优化之高度缓存

    = 0)//防止初始宽度为0(如autoLayout初次加载时) { if (!identifier.length || !...另外你还应该知道为什么OC中方法只声明,不实现,编译时只报警不报错,运行时crash是为什么了吧。 既然说到这里就多少说一说C与OC吧。...因为只是向外界提供了插入,删除,删除全部,移动,计算高度五个接口。 我们看一下大体思路: 大体思路 老司机觉得自己画这图也是没谁了。。。...当一个cell将要离开屏幕时,这个cell会进入重用池。重用池并不是什么特殊的东西,就是系统给他放在一边了。他只是单纯的放在一边了,不进行任何操作。...= 0)//防止初始宽度为0(如autoLayout初次加载时) { if (!identifier.length || !

    2.4K30

    swift3.0 coreData的使用-日记本demo效果需求分析创建工程添加数据库改写Detail页面改写Master页面Demo地址

    M-D.png 使用swift和coredata ? 选择语言和coredata.png 添加数据库 官方给数据库添加了一个时间戳字段,我们再添加一个内容字段就可以了 ?...添加字段.png 改写Detail页面 改成textview,读取数据库中的noteDetail内容字段 需要增加保存和删除操作 由于设置了detailItem:Event这个全局变量是由上一级传递过来的...self.configureView() } } //删除 @IBAction func deleteNote(_ sender: Any) { print...- 新增刷新tableview 更改cell展示内容 cell没有太多要更改的 只是显示样式更改下就行 //配置cell内容 func configureCell(_ cell: UITableViewCell...override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) //返回时刷新数据

    63440

    旋转编码器原理「建议收藏」

    式中:   δ1——线性误差;   Uθ’——在转子角度为θ时所测得的输出电压基波同相(与最大输出电压同相)分量;   Uθ——在转子角度为θ时输出电压基波同相(与最大输出电压同相)分量的理论值;...  U60——在转子角度为60°时输出电压基波分量的理论值。...在转子角度为90°时输出电压基波分量。...8交轴误差   原边绕组轮流励磁(剩下绕组短路),转动转子,分别测得转子理论角度为0°、90°、180°、270°时的电气误差,按要求取这些电气误差的代数差,绝对值最大的差值为交轴误差。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    2.3K20

    Swift-MVVM 简单演练(一)

    Swift-MVVM 简单演练(二) Swift-MVVM 简单演练(三) Swift-MVVM 简单演练(四) 前言 最近在学习swift和MVVM架构模式,目的只是将自己的学习笔记记录下来,方便自己日后查找...以及一些遇到的语法问题的简单探究 ---- GitHub 上创建项目 如有需要,请移步下面两篇文章 iOS-将项目上传到 GitHub 上 iOS-将项目上传到 Git.OSChina 上,创建自己的私有项目 ---- 项目配置 删除...你看swift是不是真的简洁了许多。...,并且能够确认该视图不会被其它控制器引用,则可以直接通过addTarget的方式为该视图中的按钮添加监听方法 这样做的代价是耦合度高,控制器和视图绑定在一起,但是省略部分冗余代码 ---- 调整未登录时导航按钮...中都是没有父类的,所以先说下关于父类的选择问题 如果分类需要使用KVC或者字典转模型框架设置对象时,类就需要继承自NSObject 如果类只是包装一些代码逻辑(写了一些函数),可以不用继承任何父类,好处

    10.3K51

    Kotlin、Swift、Scala 的延迟求值

    最近在探索相同特性在不同语言中实现的对比的文章写作思路,如果大家觉得有收获,别忘了点个赞让我感受一下;如果觉得这思路有问题,欢迎评论留言提建议 ~~ Kotlin 的延迟求值 Kotlin 最初亮相的时候...不过换个角度,乍一看明明有一行代码放在前面却没有立即执行是不是会很怪呢?如果一时间没有注意到 lazy 关键字,代码阅读起来还真是有点儿令人迷惑呢。 我们接着看看函数参数延迟求值的情况。...函数体内的最后一行就是函数的返回值,所以 left && right 的值就是 assertBothTrue 的返回值了;而 left 和 right 的参数类型长得有点儿奇怪,如果说它是 Boolean...从延迟求值的角度来讲与 Scala 是没什么差别的,不过大家仔细看会发现我们声明属性时用的是 var,也就是说 value 是可变的,这与 Scala、Kotlin 都不一样。...Hmmm,这个赋值行为从语言运行的角度来讲确实如此,可是这个逻辑不应该对开发者是透明的么,为什么要让开发者操心这么多?

    1.8K20
    领券