我正在尝试获取index
所选项目,TableView
然后开始一些活动。不幸的是,我发现的大多数解决方案都在Objective-C或不起作用。
方法func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
不打印cell
标签。
有人可以帮我吗?
导入UIKit
导入ResearchKit
class TaskListViewController:UIViewController,UITableViewDataSource {
让task = [(“ Short walk”),
(以下简称“测听”),
(“手指轻敲”),
(“反应时间”),
(“空间跨度内存”)
]
//表格中有多少节
func numberOfSectionsInTableView(tableView:UITableView)-> Int {
返回1
}
//返回int多少行
func tableView(tableView:UITableView,numberOfRowsInSection部分:Int)-> Int {
返回task.count
}
//内容是什么
func tableView(tableView:UITableView,cellForRowAtIndexPath indexPath:NSIndexPath)-> UITableViewCell {
var cell = UITableViewCell()
var(testName)=任务[indexPath.row]
cell.textLabel?.text = testName
返回单元
}
//为每个表节命名
func tableView(tableView:UITableView,titleForHeaderInSection部分:Int)->字符串?{
返回“任务”
}
func tableView(tableView:UITableView,didSelectRowAtIndexPath indexPath:NSIndexPath){
让indexPath = tableView.indexPathForSelectedRow();
让currentCell = tableView.cellForRowAtIndexPath(indexPath!)作为UITableViewCell!
println(currentCell.textLabel!.text)
}
覆盖func viewDidLoad(){
super.viewDidLoad()
}
}
经过几次尝试,我将代码更改为与我发现的教程不同的代码。而且它也不起作用。现在我认为这是iOS模拟器的问题…
导入UIKit
导入ResearchKit
class TaskListViewController:UIViewController,UITableViewDelegate,UITableViewDataSource {
@IBOutlet
var tableView:UITableView?
var项目:[String] = [“ We”,“ Heart”,“ Swift”]
覆盖func viewDidLoad(){
super.viewDidLoad()
self.tableView!.registerClass(UITableViewCell.self,forCellReuseIdentifier:“ cell”)
}
func tableView(tableView:UITableView,numberOfRowsInSection部分:Int)-> Int {
返回self.items.count;
}
func tableView(tableView:UITableView,cellForRowAtIndexPath indexPath:NSIndexPath)-> UITableViewCell {
var cell:UITableViewCell = self.tableView!.dequeueReusableCellWithIdentifier(“ cell”)as!UITableViewCell
cell.textLabel?.text = self.items [indexPath.row]
返回单元
}
func tableView(tableView:UITableView,didSelectRowAtIndexPath indexPath:NSIndexPath){
println(“您选择了单元格#\(items [indexPath.row])!”)
}
}
如果您想从单元格中获取值,则无需在 didSelectRowAtIndexPath
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
println(tasks[indexPath.row])
}
任务如下:
let tasks=["Short walk",
"Audiometry",
"Finger tapping",
"Reaction time",
"Spatial span memory"
]
您还必须检查cellForRowAtIndexPath
您必须设置的标识符。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("CellIdentifier", forIndexPath: indexPath) as UITableViewCell
var (testName) = tasks[indexPath.row]
cell.textLabel?.text=testName
return cell
}
希望能帮助到你。
问题内容: 我有一个带有几个IBOutlet的自定义单元类。我已经将课程添加到情节提要中。我已连接所有网点。我的cellForRowAtIndexPath函数看起来像这样: 这是我的自定义单元格类: 当我运行该应用程序时,我所有的单元格都为空。我已经注销,它包含所有正确的字符串。我也尝试过将等于标签的实际字符串放入,并产生相同的结果。 我想念什么?任何帮助表示赞赏。 问题答案: 感谢所有不同的建议
问题内容: 我试图检测我的sprite节点是否已被触摸并且我不知道从哪里开始。 问题答案: 首先将的属性设置为字符串。 然后在功能上 这是一种方法。 您也可以继承并覆盖其中的内部。 然后做
问题内容: 我发现了一个类似的问题,但是我试图检测并识别用户触摸哪个Sprite,但我不知道该怎么做。这是我的变量: 这个想法是先确定spriteNode,然后将其替换为其他sprite或更改颜色,但是我不知道如何使用此spriteNodes矩阵来实现它,我想第一步是确定sprite。 问题答案: 您正在尝试执行的操作(即使我没有看到这样做的原因)也可以使用委派模式来完成。基本上,您将告诉您的代表
本文向大家介绍sprite-kit 检测触摸,包括了sprite-kit 检测触摸的使用技巧和注意事项,需要的朋友参考一下 示例 您可以覆盖4种SKScene检测用户触摸的方法 请注意,每种方法都接收一个touches参数(在特定情况下),该参数可以包含一个以上的单个触摸事件。
问题内容: 我有一个tableview单元格,其中添加了collectionview单元格(用于水平滚动)。 现在我想在按下水平collectionview的任何单元格时推送到其他导航控制器。怎么做 ?或如何定义细胞压榨的委托方法。 代码: ViewController.swift: CategoryRow.swift VideoCell.swift 问题答案: 在这里,您将在类上的委托方法上单击
我有一个主页按钮图标,它只是一个普通的精灵,里面有一个图像。我想在触摸这个按钮时执行一些操作。如何将触摸式监听器添加到此按钮,或者有其他更简单的方法来实现此目的吗?