希望有人可以帮助我,不管怎样,谢谢你。因此实现了一个扩展的Tableview单元格(当我点击它打开的单元格更详细),现在我想调整单元格的高度,我该怎么做?因为在单元格之前我想要一个带有描述的图像,我希望单元格不在顶部但在我的控制器的末尾,我试图在我的视图控制器中放置一个想象但我的代码中有错误,什么我需要调整高度的代码,并在单元格之前放置描述图像?
class PROVAViewController: UITableViewController {
var tableViewData = [cellData]()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
tableViewData = [cellData(opened: false, title: "Title1", sectionData: ["Cell1","Cell2","Cell3"]),
cellData(opened: false, title: "Title1", sectionData: ["Cell1","Cell2","Cell3"]),
cellData(opened: false, title: "Title1", sectionData: ["Cell1","Cell2","Cell3"]),
cellData(opened: false, title: "Title1", sectionData: ["Cell1","Cell2","Cell3"])]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
override func numberOfSections(in tableView: UITableView) -> Int {
return tableViewData.count
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if tableViewData[section].opened == true {
return tableViewData[section].sectionData.count + 1
} else {
return 1
}
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let dataIndex = indexPath.row - 1
if indexPath.row == 0 {
guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell") else {return UITableViewCell()}
cell.textLabel?.text = tableViewData[indexPath.section].title
return cell
} else {
guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell") else {return UITableViewCell()}
cell.textLabel?.text = tableViewData[indexPath.section].sectionData[dataIndex]
return cell
}
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0 {
if tableViewData[indexPath.section].opened == true {
tableViewData[indexPath.section].opened = false
let sections = IndexSet.init(integer: indexPath.section)
tableView.reloadSections(sections, with: .none) // play around with it(cosa significa non lo so, vedi video)
}else{
tableViewData[indexPath.section].opened = true
let sections = IndexSet.init(integer: indexPath.section)
tableView.reloadSections(sections, with: .none)
}
}
}
}
答案 0 :(得分:0)
答案 1 :(得分:0)
我不确定你是否理解你的问题:
您的单元格旁边有 <ul>
<li *ngFor="let category of menuitem">
<span><input type="checkbox
(change)="OnCheckboxSelect(category,$event)">
</span>
<span><a href="#{{category._id}}" data-toggle="collapse" >
{{category.category_name}}</a>
</span>
<ul id="{{category._id}}" class="collapse">
<li *ngFor="let item of category?.category_item">
<span><input type="checkbox"
(change)="OnItemSelect(item, $event)">
</span>
<span><a href="#{{item._id}}" data-toggle="collapse">
{{item.item_name}}</a>
</span>
<ul id="{{item._id}}" class="collapse">
<li *ngFor="let size of item?.item_size">
<span><input type="checkbox" name="">
</span>
<span>{{size.size_name}}
</span>
</li>
</ul>
</li>
</ul>
</li>
</ul>
,imageView
旁边有动态内容。
您可以使用以下逻辑。
步骤: - 1 确保两个位置的行大小都已更改,如屏幕截图所示:
步骤: - 2 将UILabel
和imageView
拖到单元格中,并按照以下约束条件完成操作:
希望这有帮助。