有沒有辦法在調用setText之後限制UITextField
的幀大小?所有其他問題似乎都與用戶編輯後基於字符串調整大小有關,或者在編輯時限制字符串本身的大小。需要限制UITextField的大小,而不受文本長度和文本編輯的影響
UITextField從IB初始化,然後在viewDidLoad中調用setText。 UITextField
是UINavigationBar
上的UINavigationItem
。
- (void)viewDidLoad {
[super viewDidLoad];
NSString *theURL = [NSString stringWithFormat:@"http://stackoverflow.com/questions/ask/ThisIsABogusURLForExamplePurposes.htm"];
[_addressBar setText:theURL];
}
在這種情況下,我需要的用戶能夠編輯字符串,但它也是在代碼中的第一次的觀點,提出設置。在IB中,我將寬度設置爲所需的最大寬度,如果我用一個小字符串填充UITextField
,它仍然保持該大小。但是,使用任何字符串調用setText(導致文本出現在字段寬度之外),會導致它將UITextField
寬度拉伸到UINavigationBar
的全長。我試圖以編程方式設置setText被調用後的字段的幀大小,但它似乎沒有效果。
感謝您的幫助!
會使用textField佔位符而不是設置textField值嗎? – Bill
不幸的是,'setPlaceholder:'具有相同的效果。 – Bejmax
不幸的是,我無法複製您的問題。使用佔位符時,文本字段的行爲與預期相同,方法是添加省略號以指示不可見的其他文本。 – Bill