gpt4 book ai didi

ios - 如何设置选中的TableView的一些索引

转载 作者:搜寻专家 更新时间:2023-11-01 06:15:55 25 4
gpt4 key购买 nike

我有一个包含 10 行的 UITableView。我希望默认选择第一行和第三行。有人可以帮助我吗?

我试过的代码:

import UIKit

var variable = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]

class ControllerClass: UIViewController, UITableViewDelegate, UITableViewDataSource {

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return variable.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "intervalCellIdentifier", for: indexPath) as UITableViewCell
cell.accessoryType = .none
cell.textLabel?.text = variable[indexPath.row]

return cell
}

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

}

func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {

}

override func viewWillAppear(_ animated: Bool) {
self.tabBarController?.tabBar.isHidden = true
}

override func viewDidAppear(_ animated: Bool){
super.viewDidAppear(animated)

self.tableView.allowsMultipleSelection = true
self.tableView.reloadData()
// here is where selection is made
self.tableView.selectRow(at: IndexPath(row: 0, section: 0), animated: false, scrollPosition: .none)
self.tableView.selectRow(at: IndexPath(row: 2, section: 0), animated: false, scrollPosition: .none)
}
}

最佳答案

首先在storyboard中选中multipleSelection checkmark,或者通过代码self.testTableView.allowsMultipleSelection = true,然后在tableview.reloadData之后放上这两行

    self.testTableView.selectRow(at:  IndexPath(row: 0, section: 0), animated: false, scrollPosition: .none)
self.testTableView.selectRow(at: IndexPath(row: 2, section: 0), animated: false, scrollPosition: .none)

标准代码

    self.testTableView.reloadData()
self.testTableView.allowsMultipleSelection = true
//here is where selection is made
self.testTableView.selectRow(at: IndexPath(row: 0, section: 0), animated: false, scrollPosition: .none)
self.testTableView.selectRow(at: IndexPath(row: 2, section: 0), animated: false, scrollPosition: .none)

指定此示例代码

var variable = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]

import UIKit

class ControllerClass: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var testTableView: UITableView!
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return variable.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "testCell", for: indexPath) as! TestTableViewCell
cell.accessoryType = .none
cell.lblWordText?.text = variable[indexPath.row]
return cell
}

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
}

func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {

}

override func viewWillAppear(_ animated: Bool) {
self.tabBarController?.tabBar.isHidden = true
}
override func viewDidAppear(_ animated: Bool){
super.viewDidAppear(animated)
self.testTableView.allowsMultipleSelection = true
self.testTableView.reloadData()
//here is where selection is made
self.testTableView.selectRow(at: IndexPath(row: 0, section: 0), animated: false, scrollPosition: .none)
self.testTableView.selectRow(at: IndexPath(row: 2, section: 0), animated: false, scrollPosition: .none)
}
override func viewDidLoad() {
testTableView.dataSource = self

}
}

enter image description here

希望对你有帮助

关于ios - 如何设置选中的TableView的一些索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45125454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com