2017-02-14 83 views
0

我想在用戶啓動editig時在文本字段旁邊顯示選取器。編輯完成後,選取器消失。以編程方式設置文本字段的IOS設置寬度

因此我在textFieldDidBeginEditing改變這樣一個文本框的寬度:

func textFieldDidBeginEditing(_ textField: UITextField) 
{ print ("textFieldDidBeginEditing") 
    let newSize = CGSize(width: 90.0, height: textfield.frame.height) 
    let newFrame = CGRect(origin: textfield.frame.origin, size: newSize) 
    textfield.frame = newFrame 
} 

在textFieldDidEndEditing寬度被複位到原來的值。

這工作得很好。在下面的嘗試與沒有再次改變(達到print語句)的時間(beginEditing,endEditing)

What's走錯了。

+0

你能解釋一下你究竟想要做什麼嗎? – Rikh

+0

我想,我發現了這個問題。我使用了一些自動佈局約束,它會覆蓋我的問題代碼中的設置。 我現在編輯textFieldDidBeginEditing和textFieldDidEndEditing中的約束。如果帖子再次打開,我會發布我的解決方案 – mica

回答

1

一切工作正常,在我的測試項目中,嘗試在設置新幀後插入textfield.setNeedsDisplay()。

相關問題