我在tableview中有Button我想按下那个按钮会选择所有单元格行,怎么做?我尝试了很多,但我没有得到任何东西
我很困惑如何使按钮接触单元格
我试过像这样制作var
var x = false
然后我喜欢
if( x == true ) { //Code }
当你按下按钮时它就是真的
但我不知道我应该把它放在哪个功能区?我不知道如何选择所有行
当有人在桌面视图中按下按钮时,有人可以帮助我如何选择\取消选择单元格中的所有行。
非常感谢你!
答案 0 :(得分:5)
var selectedUsernameArray : NSMutableArray = []
var username1Array : NSMutableArray = ["hel","dsf","fsdg"]//just a sample
最初按钮名称应为"全选"
按钮操作:
@IBAction func buttonAction(sender: UIButton) {
if(sender.titleLabel?.text == "Select all")
{
selectedUsernameArray .addObjectsFromArray(username1Array as [AnyObject])
sender.titleLabel?.text = "Deselect all"
}
else
{
selectedUsernameArray .removeAllObjects();
sender.titleLabel?.text = "Select all"
}
self.tableView .reloadData()
}
tableview委托
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! UITableViewCell
var ob: AnyObject = username1Array .objectAtIndex(indexPath.row);
cell.textLabel?.text = ob as? String;
if(selectedUsernameArray .containsObject(ob))
{
cell.backgroundColor = UIColor.blueColor();
}
else
{
cell.backgroundColor = UIColor.whiteColor();
}
return cell
}
答案 1 :(得分:1)
var isSelectAll = false; //global variable
isSelectAll = true;//on button action
self.tableView.reloadData()//on button action
cellForRowAtIndexPath
方法中的
if(isSelectAll==true)
{
cell.backgroundColor = UIColor.blueColor();
}
else
{
cell.backgroundColor = UIColor.white();
}
答案 2 :(得分:0)
在cellForRowAtIndexPath中:
UITableViewCell *cell...
cell.accesoryType = isSelectAll ? UITableViewCellAccessoryCheckmark : UITableViewCellAccessoryNone;