所以我有一个设置按钮,它只应该添加到具有当前用户名的单元格中。但是,它似乎随机添加到单元格中。在我创建按钮的语句中,它只是创建一次但是它被添加到多个单元格中。我已附加问题的图像,ps当前用户名为" test",因此设置按钮不应与matt短用户位于同一单元格中。谢谢,下面是我正在创建和添加按钮子视图的函数的附加代码。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell : UITableViewCell? = tableView.dequeueReusableCellWithIdentifier("chatCell") as? UITableViewCell
if cell == nil {
cell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "chatCell")
}
cell!.selectionStyle = UITableViewCellSelectionStyle.None
let screenSize: CGRect = UIScreen.mainScreen().bounds
let screenWidth = screenSize.width
let screenHeight = screenSize.height
var sectionTitle = self.friendSectionTitles[indexPath.section]
var friendArray: [String]! = friendDict[sectionTitle]
var friend = friendArray[indexPath.row]
if sectionTitle == "me" && friend == PFUser.currentUser().username {
var settingsButton: UIButton = UIButton.buttonWithType(UIButtonType.System) as UIButton
settingsButton.frame = CGRectMake(screenWidth - 100 , 5, 50, 30)
settingsButton.addTarget(self, action: "settingsButtonTapped:", forControlEvents: UIControlEvents.TouchUpInside)
settingsButton.setTitle("Settings", forState: UIControlState.Normal)
cell!.addSubview(settingsButton)
}
cell!.textLabel!.text = friend
return cell!
}
答案 0 :(得分:0)
在我创建按钮的语句中,它只被创建一次,但它被添加到多个单元格
因为单元格一旦创建,就会被重用于表格的其他行。如果您不希望按钮出现在重复使用的单元格中,则需要(在cellForRowAtIndexPath:
的实现中)检测其存在并将其删除(或者至少隐藏对于不应该拥有它的每一行。