如何在 Swift 中将枚举和 switch() 与 UITableViewController 结合使用

2023-12-11

我的 UITableView 有两个部分,所以我为它们创建了一个枚举:

private enum TableSections {
    HorizontalSection,
    VerticalSection
}

如何使用在 numberOfRowsInSection 委托方法中传递的“section”变量进行切换?看来我需要将“section”转换为我的枚举类型?或者有更好的方法来实现这一点吗?

错误是“在类型‘int’中找不到枚举案例‘Horizo​​ntalSection’。

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    switch section {

    case .HorizontalSection:
        return firstArray.count

    case .VerticalSection:
        return secondArray.count

    default 
        return 0
    }
}

为了做到这一点,你需要给你的枚举一个类型(在本例中为 Int):

private enum TableSection: Int {
    horizontalSection,
    verticalSection
}

这使得“horizo​​ntalSection”将被分配值 0,而“verticalSection”将被分配值 1。

现在在你的numberOfRowsInSection你需要使用的方法.rawValue在枚举属性上以访问它们的整数值:

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    switch section {

    case TableSection.horizontalSection.rawValue:
        return firstArray.count

    case TableSection.verticalSection.rawValue:
        return secondArray.count

    default:
        return 0
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Swift 中将枚举和 switch() 与 UITableViewController 结合使用 的相关文章

  • iOS 5 UIView drawRect 覆盖在设备上不起作用

    我正在准备在 iOS 5 GM 上发布我的 iPhone 应用程序 并遇到了 UIView 的错误 当我在子类上重写 drawRect 方法时 模拟器会显示所需的结果 但当我尝试在实际设备上测试时 drawRect 重写根本没有任何效果 我
  • 如何将 .ipa 转换为 .app 文件?

    每个人 我有一些 ipa 文件 想要转换为包含 app 包的存档文件 我试图这样做 但我没有办法 有什么办法可以做到这一点吗 请帮我 将 ipa 重命名为 zip 然后提取即可
  • Swift 语言中的 #ifdef 替换

    在 C C Objective C 中 您可以使用编译器预处理器定义宏 此外 您可以使用编译器预处理器包含 排除代码的某些部分 ifdef DEBUG Debug only code endif Swift 中有类似的解决方案吗 是的 你可
  • 如何在导航栏上添加 UIView?

    我需要覆盖UINavigationBar with UIView像这儿 除了使用带有按钮返回的自定义 UIView 作为导航栏之外 还有其他方法可以做到这一点吗 您可以将子视图添加到应用程序的基本视图 UIApplication share
  • iOS 上关键 ClientState 警告的默认访问速度缓慢

    在测试我的 iOS 应用程序时 我收到 对关键 ClientState 的默认访问速度慢 耗时 0 034635 秒 容差为 0 020000 警告 它似乎是间歇性发生的 我试图环顾四周看看它是关于什么的 但我并不完全确定 任何帮助表示赞赏
  • 在 Xcode 中查找未使用的文件

    我最近开始开发一个新应用程序 它基本上是我以前制作的应用程序的副本 但做了一些更改 为了制作这个新应用程序 我复制了旧应用程序并删除了一些不需要的内容 我想知道 有没有办法知道 Xcode 中正在使用哪些类文件 或者有什么关于如何查找未使用
  • gestureRecognizer shouldReceiveTouch 持续存在于已释放的视图中导致崩溃

    我有一个相当简单的 UITableView 它在堆栈上推送一个新视图 新视图有一个像这样初始化的gestureRecognizer synthesize swipeGestureLeft void viewDidLoad swipeGest
  • 无法在 xcode 8 beta 6 上编译 AWS CustomIdentityProvider

    我在 iOS 应用程序中使用 Amazon Cognito 和 Facebook 登录 直到 beta 5 为止此代码从这个SO线程 https stackoverflow com questions 37597388 aws cognit
  • 按升序对 NSDictionary 进行排序

    我正在尝试排序NSDictionary按升序排列 我正在使用这段代码 NSDictionary valDict self mGetDataDict key rowKey for NSString valueKey in valDict al
  • 依赖于不同队列上的另一个操作的 NSOperation 无法启动

    我有操作的依赖图 并且使用多个队列来组织各种操作流 例如 peopleQueue sitesQueue sessionQueue sessionQueue loginOp fetchUpdatedAccountOp peopleQueue
  • “无法取消归档名为 UITableViewController 的元素”

    我一直在按照 构建你的第二个 iOS 应用程序 教程一步步进行 在教程承诺所有错误都会消失之后 我遇到了这个错误 但直到其他错误都出现后 该错误才出现 全部更正 我尝试编译它 错误 The document MainStoryboard i
  • UIScrollView 与 UITabBarController 切断

    我有一个 UIScrollView 我将其放置在视图中 界面生成器文档 xib m h 但是 UIScrollView 的下半部分被剪切 并且由于我有一个 UITabBarController 而没有显示其下半部分 我在 appdelega
  • UITableViewCell 内嵌套 UIStackView 内的 UILabel 有时会被截断

    我的一个表设置中有一个表视图单元格 其中包含以下视图层次结构 外部水平 stackview 固定到单元格内容视图的尾部 前部 底部和顶部边缘 右侧标签固定到其父 stackViewHackView 的尾部 前部 底部和顶部边缘 在我的控制器
  • Swift 中通过可选绑定进行安全(边界检查)数组查找?

    如果我在 Swift 中有一个数组 并尝试访问超出范围的索引 则会出现一个不足为奇的运行时错误 var str Apple Banana Coconut str 0 Apple str 3 EXC BAD INSTRUCTION 但是 我会
  • 使用未声明的类型“对象”

    这太奇怪了 通常我可以理解未声明的类 但这是声称 Object 类本身未声明 NSObject 可以工作 但我的项目设置方式我需要它是一个纯 Swift 对象 我的类标题如下所示 import UIKit import Foundation
  • 如何从第二个视图弹回到根视图?

    我使用 2 将 3 个视图 根视图 第 1 个视图 第 2 个视图 连接在一起modal在 Apple Watch 故事板中继续 1 在根视图中 按下 保存 按钮后 将显示第一个模态视图 2 在第一模态视图中 一旦按下 500 按钮 将显示
  • iOS:如何创建核心数据库的备份副本?以及如何导出/导入该副本?

    我想为我的应用程序的用户提供创建核心数据数据库备份的可能性 特别是在他切换到新设备等情况下 我该怎么做呢 特别是如何重新导入该文件 我的意思是 假设他制作了数据库的备份副本 然后更改了大量内容并想要重置为以前保存的备份副本 我该怎么做呢 T
  • 如何制作像 Facebook 应用程序一样的登录屏幕?

    如何制作像 Facebook 应用程序一样带有 电子邮件 和 密码 文本字段的登录屏幕 Facebook登入 http extdesenv com wp content uploads 2012 05 facebook login ios
  • 从应用程序内发送电子邮件中的图像和文本

    如何从我的应用程序内通过电子邮件发送图像和文本 表格数据形式 请大家帮忙并提出建议 谢谢 void sendMailWithImage UIImage image if MFMailComposeViewController canSend
  • iOS 中是否需要 Google App Indexing SDK 才能使用 Google DeepLinking?

    我想用谷歌应用程序索引与我的网页和 iOS 应用程序 我支持通用链接 or 深层链接用谷歌术语 与苹果Search并相应地设置我的网页 From 谷歌文档 https developers google com app indexing i

随机推荐

  • 对粘贴到输入字段的文本进行字符计数的正确方法是什么?

    我有一个带有输入计数器的自动扩展表单字段 其中文本区域具有 maxLength 如果在其中键入或粘贴多行 则 onKeyUp 字段会自动扩展该区域并触发计数的重新计算 这工作正常 但当我故意粘贴比允许的 1024 个字符更长的文本 1029
  • React-Native 分析不显示 JS 线程

    我按照官方指南来分析我的 JS https facebook github io react native docs android ui performance html 但是当我得到结果时 没有任何js相关的代码可以看 知道发生了什么吗
  • 从 GUI 保存用户设置

    我目前正在编写一个应用程序 它有一个选项框架JDialog 该框架包含用户可以配置的各种复选框和文本字段 我想保存用户对选项所做的更改 这样做的最佳方法是什么 我的第一个想法是将其保存在格式为例如的文件中来实现它 checkBox1 val
  • socket.io 从不连接到客户端

    我无法让 node js 中的 socket io 工作 当我在端口 3000 上启动服务器时 即使在我访问时它也不会收到连接http localhost 3000 我什至尝试复制并粘贴示例代码socket io npmjs 网页 Back
  • 处理列表

    我试图弄清楚如何处理这样的列表 4 6 7 1 2 4 6 10 4 2 4 1 这是一个由整数列表组成的列表 我希望我的函数将此列表作为输入并返回列表中不重复的整数列表 结果应该是 4 6 7 1 2 10 但我在弄清楚如何遍历它时遇到了
  • MySQL 查询语法帮助:错误 #1066 - 不唯一的表/别名

    我有四张桌子 user user billingprofile user shippingprofile and user address user 用户 ID 创建日期 用户计费配置文件 用户ID 地址 用户运输资料 用户ID 地址 用户
  • php 中的 !$page == false 还是 $page ?

    我看到下面的代码使用了 if page false 如果我使用 if page 有什么区别 if id check that page exists page dbRow SELECT FROM pages WHERE id id if p
  • 如何在 React Native 的 组件中插入换行符?

    我想在 React Native 的文本组件中插入一个新行 如 r n 如果我有
  • 如何在 Flink 中将 HashMap 附加到 Configuration 对象?

    我想分享一个HashMap跨 Flink 中的每个节点并允许节点更新该 HashMap 到目前为止我有这个代码 object ParallelStreams val env StreamExecutionEnvironment getExe
  • 如何用C#从oracle数据库填充数据集

    我正在尝试填充 oracle 数据集 NULL 我将其与带有 C 的 NET Framework 2 0 一起使用 这是一个 system data oracleclient 示例http msdn microsoft com en us
  • 如何为 IE、Firefox 和 Chrome 编写网络浏览器插件

    我需要编写一个支持 IE 7 Firefox 3 Chrome 的网络浏览器插件 该插件必须能够将 DirectX 对象放置在网页中 我没有使用插件的经验 我做了一些调查并决定使用 FireBreath 来实现 我无法理解如何将图像放置在插
  • 如何在 D3js 中动态添加图像到圆圈

    我很难弄清楚如何使用数据集中的链接将图像放置在圆圈内 我知道需要一种模式才能将图像添加到节点 related关于此主题的 SO 问题在介绍节点和数据之前附加了定义 图案和图像元素 就我而言 我找不到在选择器函数内附加标签的方法 因为数据是动
  • 如何覆盖testNG中的index.html报告

    我有一个场景 需要将一些自定义消息添加到 index html testNG 报告中 有什么办法可以做到这一点吗 我刚刚创建了一个自定义注释 我想像 DataProvider 一样将其发布到 index html testNG 报告中 到目
  • 将 ImageView 放在布局中的 ImageView 上 [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我创建了一个 Android 应用程序 我想将 ImageView 放在 ImageView 上 如何让我成为可能 Thanks 我已经为你创建了代码 请看这是 XML 代码
  • f2py:包装 fortran 模块,该模块利用分布在不同文件中的子例程?

    由于我描述的原因earlier 我需要在Python中使用LAPACKs dgesvd和zgesvd方法 而不是包装在numpy中的方法 有人指出 我可以使用 f2py 来创建我自己的 python 包 问题是 lapack 中的 dges
  • 重写函数类型原型

    我在玩耍并试图覆盖时遇到了一个有趣的行为Function原型 假设我们已经像这样重写了 toString const funcToString Function prototype toString Function prototype t
  • 清理 Oracle 序列

    我广泛使用 SQL Server 但对 Oracle 的经验很少 我接到的任务是 清理 Oracle 数据库中的序列 但我不知道如何安全地完成此任务 我需要确定表中实际的最大值 假设 ID 105 然后查看该 ID 的下一个序列是什么 如果
  • fontello 中的图标字体不适用于 Meteor js

    我已经从 fontello 下载了自定义图标字体 并打算在我的流星应用程序中使用它 我尝试了下载包附带的演示 字体显示正常 这是我的CSS font face font family fontello src url fonts fonte
  • iOS 应用程序:几次崩溃,常见主题为:SIGSEGV 和 _sigtramp

    作为 obj c 的新手 我不擅长阅读堆栈跟踪 但我通常可以找出代码中从哪里开始查找 然而 在测试过程中 其中一位测试人员不断报告多次随机崩溃 我无法确定堆栈跟踪的头或尾 因为它们不指向我自己的任何代码 这里有两个 0 WIT Free 0
  • 如何在 Swift 中将枚举和 switch() 与 UITableViewController 结合使用

    我的 UITableView 有两个部分 所以我为它们创建了一个枚举 private enum TableSections HorizontalSection VerticalSection 如何使用在 numberOfRowsInSect