我在表格视图单元格中添加了一个堆栈视图,我添加了一个textField,一个textView,以及其他视图及其子视图(图像标签),我添加了相应小部件的按钮,当我单击按钮时,各自小部件应该出现,其他小部件应该被隐藏但是出现的小部件在整个堆栈视图上放大,我希望小部件应该占用它的原始大小,其他大小的隐藏小部件应该是空的。
注意:我在堆栈视图中添加了一些UIvIEWs和textfield以及Textview,现在我只想显示一个视图或TextField或Textview基于我点击的Button然后堆栈视图应隐藏其他小部件(如剩余的视图或文本)字段或textview除了被点击的内容之外),它在这里做得很好,但错误是选中或显示的小部件在大小上放大并占据隐藏的其他小部件的所有spcae
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var Cell : UITableViewCell?
Cell = firstTableView.dequeueReusableCell(withIdentifier: "firstCell")! as UITableViewCell
if widgetInstockArray.count == 0 && labelInstockArray.isEmpty {
print("no textFields in instock")
}
else {
print("widget process i in winstock loop")
let i = widgetInstockArray[indexPath.row]
if i.contains(wTextField) {
print("textField was placed")
Cell?.contentView.viewWithTag(1)?.isHidden = true
Cell?.contentView.viewWithTag(2)?.isHidden = false
Cell?.contentView.viewWithTag(3)?.isHidden = true
Cell?.contentView.viewWithTag(6)?.isHidden = true
Cell?.contentView.viewWithTag(9)?.isHidden = true
Cell?.contentView.viewWithTag(12)?.isHidden = true
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
print("no textField exist")
}
if i.contains(wCamView) {
Cell?.contentView.viewWithTag(1)?.isHidden = true
Cell?.contentView.viewWithTag(2)?.isHidden = true
Cell?.contentView.viewWithTag(3)?.isHidden = false
Cell?.contentView.viewWithTag(6)?.isHidden = true
Cell?.contentView.viewWithTag(9)?.isHidden = true
Cell?.contentView.viewWithTag(12)?.isHidden = true
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
print("nothing cam")
}
if i.contains(wTextView) {
Cell?.contentView.viewWithTag(1)?.isHidden = false
Cell?.contentView.viewWithTag(2)?.isHidden = true
Cell?.contentView.viewWithTag(3)?.isHidden = true
Cell?.contentView.viewWithTag(6)?.isHidden = true
Cell?.contentView.viewWithTag(9)?.isHidden = true
Cell?.contentView.viewWithTag(12)?.isHidden = true
let tvLabel = UILabel(frame: CGRect(x: 10, y: 10, width: 200, height: 30))
tvLabel.text = "You title"
Cell?.contentView.viewWithTag(1)?.addSubview(tvLabel)
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
}
if i.contains(wCheckBox) {
Cell?.contentView.viewWithTag(1)?.isHidden = true
Cell?.contentView.viewWithTag(2)?.isHidden = true
Cell?.contentView.viewWithTag(3)?.isHidden = true
Cell?.contentView.viewWithTag(6)?.isHidden = true
Cell?.contentView.viewWithTag(9)?.isHidden = true
Cell?.contentView.viewWithTag(12)?.isHidden = false
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
}
if i.contains(wDateView) {
Cell?.contentView.viewWithTag(1)?.isHidden = true
Cell?.contentView.viewWithTag(2)?.isHidden = true
Cell?.contentView.viewWithTag(3)?.isHidden = true
Cell?.contentView.viewWithTag(6)?.isHidden = true
Cell?.contentView.viewWithTag(9)?.isHidden = false
Cell?.contentView.viewWithTag(12)?.isHidden = true
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
}
if i.contains(wSignView) {
Cell?.contentView.viewWithTag(1)?.isHidden = true
Cell?.contentView.viewWithTag(2)?.isHidden = true
Cell?.contentView.viewWithTag(3)?.isHidden = true
Cell?.contentView.viewWithTag(6)?.isHidden = false
Cell?.contentView.viewWithTag(9)?.isHidden = true
Cell?.contentView.viewWithTag(12)?.isHidden = true
Cell?.textLabel?.text = labelInstockArray[indexPath.row]
}
else {
}
print("could not add widgets")
}
Cell?.selectionStyle = UITableViewCellSelectionStyle.none
return Cell!
}
答案 0 :(得分:0)
答案 1 :(得分:0)