问题描述
我有一个表格视图,据我了解,通过在单元格上UIView
的子视图中添加标签来设置它的单元格。我需要按添加到该视图中的值之一对表视图进行排序,但是我不确定如何访问此值,并且不确定如何按此值对表视图进行排序。
CellForRowAt
func tableView(_ theTableView: UITableView,cellForRowAt theIndexPath: IndexPath) -> UITableViewCell {
let cell = (theTableView.dequeueReusableCell(withIdentifier: CalendarTableView.DATE_REUSE_ID,for: theIndexPath) as? CalendarTableViewCell)!
let surveyDataItem = self.myDayListItems[theIndexPath.row]
let taggedQuestions = self.mySurveyQuestionHelper.getTaggedQuestions(theSurveyDataItem: surveyDataItem)
let tagViews = self._buildTaggedInfoViews(theTaggedQuestions: taggedQuestions,theCalendarSurveyDataItem: surveyDataItem,theCellWidth: cell.frame.width)
let taggedAnswers = self.mySurveyAnswerHelper.getTaggedAnswers(theTagNames: taggedQuestions,theCalendarSurveyDataItem: surveyDataItem)
cell.setupCellContents(theTaggedViews: tagViews,theTaggedAnswers: taggedAnswers,theSurveyDataItem: surveyDataItem)
return cell
}
这里是cell.setupCellContents
函数,将值添加到单元格UIView
的标签上
@IBOutlet var myInfoViewContainer: UIView!
private func _setupTaggedQuestionsAndAddAnswers(theTaggedViews: [AnyObject],theTaggedAnswers: [String: String],theSurveyDataItem: CalendarSurveyDataItem) {
for view in theTaggedViews {
if let view = view as? SubFormInfoView {
guard let widgetName = view.widgetName else {
continue
}
let result = theTaggedAnswers[widgetName]!
if !widgetName.starts(with: TaggedSurveyDataHelperSwift.WIDGET_FREE_SIG_STARTS_WITH) &&
!widgetName.starts(with: TaggedSurveyDataHelperSwift.WIDGET_TEXT_AREA_STARTS_WITH) &&
!widgetName.starts(with: TaggedSurveyDataHelperSwift.WIDGET_SIG_STARTS_WITH) &&
!widgetName.starts(with: TaggedSurveyDataHelperSwift.WIDGET_TIERED_CHOICE_STARTS_WITH) {
}
view.rightLabel.text = result
self.myInfoViewContainer.addSubview(view)
}
}
}
因此,根据我的判断,值位于单元格myInfoViewContainer
视图中的某个位置。我已经搜索了myInfoViewContainer
(这是UIView
)中的值,但是似乎找不到它们。我需要特别帮助的是-如何找到要添加到单元格子视图标签中的值,以及如何根据该值对表格视图进行排序。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)