我的UITableView有3个部分 1)向用户显示UISwitch,询问您是否要显示图像 2)显示两个文本字段 3)显示ImageView以显示图像
我想隐藏UISwitch更改的第3部分。 这3个部分都是静态的。 uiswitch的行动如下:
@IBAction func stateChanged(switchState: UISwitch, tableView: UITableView )
{
if switchState.on {
showImageLB.text = "Yes"
println( "The Switch is On")
} else {
showImageLB.text = "No"
println("The Switch is Off")
}
}
请帮我解决问题。 感谢..
答案 0 :(得分:2)
每次翻转UISwitch时,都需要向具有ImageView的部分添加新行。
要添加更多行并隐藏某个部分,您只需在tableView上调用reloadData
即可。
调用此reloadData
后,将再次调用以下两个函数。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
现在你需要做的就是,如果你的开关被翻转,保存一个布尔值并在你的函数中返回不同的值。
例如。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
if(switchState.on)
{
return 2; // now you are hiding your last section.
}
else
{
return 3; // now you are showing all 3 sections when switch is off.
}
}