gpt4 book ai didi

ios - 如何在 tableview 方法之外获取 tableview [section]?

转载 作者:行者123 更新时间:2023-11-28 05:51:50 26 4
gpt4 key购买 nike

我有一个带有 DidSelectMethod 的 collectionview 日历,在这个方法中,我想检查所选日期是否 == 到 tableview 中的任何日期(日期是 tableview 的标题)也在同一 View 中 Controller ,然后在表格 View 中滚动到该日期。

我需要一些帮助来思考这方面的逻辑。现在我认为我需要以某种方式在 tableview 方法之外获取 tableview 的 [section],但我认为这不是执行此操作的正确方法。

这是我目前正在尝试的:

Collection View 日历的 DidSelect 方法:

func calendar(_ calendar: JTAppleCalendarView, didSelectDate date: Date, cell: JTAppleCell?, cellState: CellState) {
configureCalendarCell(cell: cell, cellState: cellState)
cell?.bounce()
selectedDate = date

// Check if selectedDate is == to any dates in the tableview

// First, get the dates from TableView's Data Source.
// The [datesFromCalendarXML] also make up the Headers of each section in TableView
let datesFromCalendarXML = allEventsInVisibleMonth.map {$0.eventdate}

// Reformat selectedDate from collectionView Calendar to String
let selectedDateToString = formatter.string(from: selectedDate!)

// See if the selected date matches any of the tableview dates
if datesFromCalendarXML.contains(selectedDateToString) {

// set up tableView's scrollToRow
// get [section] Int of the datesFromCalendarXML that matches
// Can I get [section] outside of of tableview?
let sectionOfDate =

let indexPath = IndexPath(row: 0 , section: sectionOfDate)
self.tableView.scrollToRow(at: indexPath, at: UITableView.ScrollPosition.top, animated: true)

} else {}

寻找有关如何解决此问题的提示。

最佳答案

这是我的工作方式,以防其他人在看。

我使用 .index(of: _) 在我的 allEventsInVisibleMonth 数组中获取 selectedDate 的索引,然后将该索引用于 scrollToRow 的 indexPath:IndexPath。

let datesFromCalendarXML = allEventsInVisibleMonth.map {$0.eventdate}
let selectedDateToString = formatter.string(from: selectedDate!)
if let index = datesFromCalendarXML.index(of: selectedDateToString) {
let indexPath = IndexPath(row: 0 , section: index)
self.tableView.scrollToRow(at: indexPath, at:
UITableView.ScrollPosition.top, animated: true)
}

关于ios - 如何在 tableview 方法之外获取 tableview [section]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52676597/

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