我是Swift和Xcode的新手。我试图在用户按下返回键后使UIButton出现在tableView单元格的右侧。现在我只是出现一般按钮出现问题。
根据我的理解,我的自定义类TextInputTableViewCell我认为应该创建一个按钮:
class TextInputTableViewCell: UITableViewCell {
@IBOutlet weak var textField: UITextField!
var cellButton: UIButton!
func createCellButton()
{
let image = UIImage(named: "Completed Circle.png")
cellButton = UIButton(frame: CGRect(x: 340, y: 56, width: 30, height: 30));
cellButton.setBackgroundImage(image, for: UIControlState.normal)
addSubview(cellButton)
}
然后在这里我在ViewController类中配置单元格的属性:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = self.tableView.dequeueReusableCell(withIdentifier: "cell")! as! TextInputTableViewCell
cell.textField.delegate = self
cell.backgroundColor = UIColor.clear //to get background image loaded
cell.createCellButton()
return cell
}
我知道我可能搞砸了什么。此外,任何有关如何在用户按下输入后出现的提示将不胜感激。我已经设置了textFieldShouldReturn函数。
答案 0 :(得分:2)
为什么不使用故事板制作UIButton
并制作插座。然后在cellForRowAt
执行cell.button.isHidden = true
cell.button.isUserInteractionEnabled = false
(或类似的,不确定实际拼写)。然后让TextInputTableViewCell
符合UITextFieldDelegate
class TextInputTableViewCell: UITableViewCell, UITextFieldDelegate { ..
内部细胞:
func textFieldShouldReturn(textField: UITextField!) -> Bool { //delegate method
self.button.isUserInteractionEnabled = true
self.button.isHidden = false
return true
}
你可能会遇到一些细胞可重用性问题,所以最好制作一些像var userDidEnterText = false
这样的局部变量来检查用户是否改变了某些东西
答案 1 :(得分:0)
在win = GraphWin("Plot", 500, 500) # Creates a window
for m in range(j): # Loop for each function
color = random.choice(['red', 'black', 'green', 'yellow', 'pink', 'blue']) # Randomizes a color for each function
for h in range(t): # Loop for each pair of values "x, y"
win.plot(axis[h], points[m][h], color) # Find points and plot each point in win
win.getMouse() # Pause before clicking
win.delete("all") # Clear out old plot
身上,我可以看出createCellButton()
&的价值。 x
可能是问题的根源。我认为按钮是从单元格框架创建的。尝试使用以下参数:
y