首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从字符串滚动到UITableViewCell

从字符串滚动到UITableViewCell
EN

Stack Overflow用户
提问于 2017-07-04 04:39:15
回答 2查看 42关注 0票数 0

我想自动滚动到UITableViewCell。我知道如何通过行号来执行此操作,例如

代码语言:javascript
复制
var indexPath = NSIndexPath(forRow: numberOfRowYouWant, inSection: 0)
self.tableview.scrollToRowAtIndexPath(indexPath, 
               atScrollPosition: UITableViewScrollPosition.Middle, animated: true)

但是,我想滚动到等于字符串的单元格。我有一个结构体

代码语言:javascript
复制
struct Song {
    var title: String
    var artist: String
}

var songs: [Song] = [
    Song(title: "Title 1", artist "Artist 1"),
    Song(title: "Title 2", artist "Artist 2"),
    Song(title: "Title 3", artist "Artist 3"),
]

UITableViewCell的标题等于titlesubtitle等于艺术家。每当用户点击UIButton时,我希望它滚动到Song(title: "Title 3", artist "Artist 3")所在的单元格。我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2017-07-04 04:59:57

当他们按下按钮时,只需循环您的歌曲数组,并检查具有给定标题和您正在查找的艺术家的歌曲。找到歌曲后,滚动到其索引路径与找到该歌曲的数组中的索引对齐的单元格。

票数 0
EN

Stack Overflow用户

发布于 2017-07-04 05:02:57

Song类添加一个属性,如下所示:

代码语言:javascript
复制
struct Song {
var title: String
var artist: String
var idOrder: Int
}

然后,您必须按idOrder对列表中的歌曲进行排序。idOrder也是您的行号,因此您可以使用您的代码:

代码语言:javascript
复制
    var indexPath = NSIndexPath(forRow: numberOfRowYouWant, inSection: 0)
    self.tableview.scrollToRowAtIndexPath(song.idOrder, 
               atScrollPosition: UITableViewScrollPosition.Middle, animated: true)
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44893594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档