- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嗨,我是编码新手,所以基本上我已经在 github 上创建了一个 tableview 应用程序第一个显示了我想要在没有代码的情况下做什么 https://github.com/edlen/guideline.git第二个是尝试用代码重新创建它 https://github.com/edlen/guidelines-via-code.git
但我真的很困惑如何创建在屏幕之间移动的代码,例如在主菜单上我选择有用的信息,如何使带有这些选项的表格 View 出现?然后如果我选择 PO 开关我该如何继续它?
从技术上讲,我可以在没有代码的情况下完成我想要的事情,但我真的希望能够更好地理解表格 View 的编码以及如何在多个表格 View 之间切换,然后选择一个充满文本的最终个性化 View Controller 。您能提供的任何建议都会很棒 - 但请准备好说得非常缓慢且清晰,因为我仍在学习中!
最佳答案
首先,使用 Xcode 中的 Interface Builder 设计应用程序对于 Swift 和 Objective C 来说都是相同的。
如果要在 View 之间切换,则应将 UITableViewController 嵌入 UINavigationController 内。只需将 UINavigationController 和 UITableViewController 拖放到 Storyboard中 - 确保 UITableViewController 是导航 Controller 的 Root View Controller (右键单击将 tableview Controller 拖动到导航 Controller 上)。 p>
之后,创建一个新的 Cocoa Touch Class - 文件(或按 CMD-N)。看这个:
确保在“子类”中选择UITableViewController。
<小时/>之后,返回界面构建器并选择 UITableViewController。转到身份检查器来更改表 View Controller 的类。看这里:
<小时/>
之后,您只需为表格 View 单元格选择一个重用标识符。您需要重用标识符,以便您的 iPhone(或 iPad)可以重用单元格,而不必每次都创建新单元格。我刚刚选择“myCell”作为重用标识符。为此,请单击单元格并转到属性检查器:
<小时/>
好的,界面生成器的部分就完成了。现在转到之前创建的 MyTableViewController.swift。
这里有一些方法。您至少需要这些方法:
func numberOfSectionsInTableView(tableView: UITableView) -> Int
和
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
您需要这些方法,因为您的 TableView 的数据源设置为self。这意味着,此类用于用信息填充您的表格 View 。
让我们从简单开始吧。要测试所有内容,只需使用 1 个部分。因此,在您的 numberOfSectionsInTableView 中返回 1。
如果您有一些数据要显示,我想您会将这些数据存储在数组中?但是,在 numberOfRowsInSection 中,您必须返回必须在该部分中显示的行数。所以如果你想显示3行,只需在这里返回3即可。这使得 1 个部分 在该部分内具有 3 行。
<小时/>现在您必须使用标签和 ImageView 自定义表格 View 单元格。所以你需要这个功能
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("myCell", forIndexPath: indexPath) as UITableViewCell
// Configure the cell...
// add some UILabels or UIImageViews here.
return cell
}
创建您自己的单元格。在这里,您需要在界面生成器中设置的重用标识符。
<小时/>UITableView 还有一个委托(delegate),它负责诸如选择(取消)单元格之类的事件。因此,如果您想在用户点击单元格时显示 UIViewController,则必须实现该方法
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
在这里您可以在 View 之间切换。在这里,您需要将 TableView Controller 嵌入到导航 Controller 中(除非您将 View 呈现为模态视图 Controller ,但这不是这里的重点)。
因此,用户点击一个单元格,您将在 indexPath.row 中获得该单元格的索引 - 您需要它来向用户显示新 View 中的信息。之后,创建你的 UIViewController 或其他什么,并呈现 View Controller
self.navigationController?.presentViewController(myViewControllerToPresent, animated: true, completion: { () -> Void in
// some code to do after the presentatioin is ready
})
就是这样!
关于uitableview - 快速编码多个 TableView - 如何将它们连接起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27077445/
我正在尝试执行 vagrant up 但一直遇到此错误: ==> default: IOError: [Errno 13] Permission denied: '/usr/local/lib/pyt
我在容器 div 中有一系列动态创建的不同高度的 div。 Varying text... Varying text... Varying text... Varying text.
通过 cygwin 运行 vagrant up 时遇到以下错误。 stderr: /bin/bash: /home/vagrant/.ansible/tmp/ansible-tmp-14872260
今天要向小伙伴们介绍的是一个能够快速地把数据制作成可视化、交互页面的 Python 框架:Streamlit,分分钟让你的数据动起来! 犹记得我在做机器学习和数据分析方面的毕设时,
我是 vagrant 的新手,正在尝试将第二个磁盘添加到我正在用 vagrant 制作的虚拟机中。 我想出了如何在第一次启动虚拟机时连接磁盘,但是当我关闭机器时 然后再次备份(使用 'vagrant
我是一名优秀的程序员,十分优秀!