小编Mik*_*key的帖子

如何使用可变数据源在表视图中按字母顺序创建节标题

我将视图控制器的字符串存储在字符串数组中.我在表视图中将此字符串数组导入为数据源.一切顺利.但现在我想对表视图进行排序并添加节标题.节标题应该来自字母表,意义节的行应该是数组中的所有字符串,从节标题的字母开始.

我知道如何使用静态数组实现这一目标.但是我怎么能只显示那些也有行(数组中的字符串)的部分呢?我怎样才能使它在保存带字母的新字符串时生成一个新的部分,这些部分中尚不存在?

我希望我已经足够准确地解释了它.我试了很久才解决这个问题.如果有人可以帮助我会很棒.

以下是一些代码段:

class OverViewController: UIViewController {

@IBOutlet weak var tableView: UITableView!
@IBOutlet weak var addButton: UIBarButtonItem!
@IBOutlet weak var editButton: UINavigationItem!


var kontaktListe = Telefonbuch.loadArray()
var sections = [[String]]()
var collation = UILocalizedIndexedCollation.currentCollation()


override func viewDidLoad()
{
    super.viewDidLoad()
    tableView.dataSource = self
    configureSectionData()
    tableView.reloadData()

}


func configureSectionData()
{
    let names = kontaktListe.map{$0.name}

    let selector: Selector = "description"


    sections = Array(count:collation.sectionTitles.count, repeatedValue: [])

    let sortedObjects = collation.sortedArrayFromArray(names, collationStringSelector: selector)

    for object in sortedObjects {
        let sectionNumber = collation.sectionForObject(object, collationStringSelector: selector) …
Run Code Online (Sandbox Code Playgroud)

header tableview sections swift

7
推荐指数
2
解决办法
8431
查看次数

实例成员不能用于自定义类的类型

我有一个名为"威士忌建设者"的classe,它只启动了新的威士忌.现在我想在我的"WhiskyOverViewController"中添加新添加的威士忌.但是我面临以下问题:

class WhiskyOverViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

@IBOutlet weak var tableView: UITableView!

var whiskyArray = [WhiskyBuilder]()
let stringArray = whiskyArray.map({$0.whiskyName!})
var whiskies = [Character: [String]]()
var objectsArray = [Object]()
Run Code Online (Sandbox Code Playgroud)

在"stringArray"的行中,我得到错误"Instance member'whiskyArray'不能用于'WhiskyOverViewController'类型.为什么我不能在那里使用whiskyArray变量?

在此先感谢您的帮助

instances swift

1
推荐指数
1
解决办法
2678
查看次数

标签 统计

swift ×2

header ×1

instances ×1

sections ×1

tableview ×1