0
A
回答
0
如果文本字段是隻讀的,那麼您必須以編程方式設置文本,對吧?在這種情況下,當您設置文本時,請同時設置其他文本字段的文本。
如果我誤解了你的問題,以及用戶編輯文本框,你可以聽的變化是這樣的:
[textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventValueChanged];
和處理回調方式如下:
- (void)textFieldDidChange:(UITextField *)textField
{
// Handle change
}
0
從蘋果文檔
textFieldShouldBeginEditing:詢問委託人是否應該開始編輯 在指定的文本字段中。
- (BOOL)textFieldShouldBeginEditing:(*的UITextField)文本框
參數文本字段 - 爲其編輯即將 開始的文本字段。
返回值是,如果編輯會話應該啓動;否則, 否禁止編輯。
討論當用戶執行的動作通常會在 開始編輯會話時,文本字段會首先調用此方法至 ,看看是否應該實際進行編輯。在大多數情況下, 只會從此方法返回YES以允許編輯繼續。
委託實現此方法是可選的。如果不存在 ,則繼續進行編輯,就好像該方法返回YES一樣。
所以使用這樣的:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
BOOL editable;
if (textField == myReadOnlyTextField) {
editable = NO;
} else if (textField == myEditableTextField) {
editable = YES;
} else {
// editable = YES/NO/Other Logic
}
return editable;
}
而且爲了委託方法被調用的接口應符合UITextfieldProtocol:添加到您的.h文件中<UITextFieldDelegate>
所以它看起來是這樣的:
@interface ViewController : UIViewController <UITextFieldDelegate>
0
如果您在ios中實現,請實施此委託方法。
- (BOOL)textField:(UITextField *)textField
shouldChangeCharactersInRange{}
如果您在MacOS上執行,然後使用下面的委託方法: -
-(void)controlTextDidChange
相關問題
- 1. 只讀文本字段
- 2. 在讀取文本字段的同時修改文本字段
- 3. 當值更改時,代碼事件監聽器用於表單文本字段?
- 4. jbutton更改文本字段的文本
- 5. 哪些事件是文本區域元素的內容更改?
- 6. 確定哪個文本框已觸發文本更改事件
- 7. 文本框文本更改事件
- 8. 更改文本字段
- 9. 重用XML組件,只更改一個文本字段
- 10. 閱讀文本文件,並只寫行與某些文字
- 11. JLabel更改文本事件
- 12. 文本框更改事件
- 13. Gridview文本更改事件
- 14. JavaFX文本更改事件
- 15. 文本字段「改變」事件觸發只在模糊
- 16. 只讀文本字段中的錯誤
- 17. Flash Builder只讀富文本字段?
- 18. 如何使DNN文本字段只讀
- 19. 哪些應該用於GROUP BY:文本字段或數字字段?
- 20. Sencha Touch 2 - 用於文本字段的「更改」事件偵聽器
- 21. 文本框更改事件 - Java腳本
- 22. VB2010閱讀文本文件到datagridview,但只有某些字段/行
- 23. 當更改選擇字段的值時更新文本字段
- 24. 如何更改只讀文本框的文本顏色?
- 25. 在文本字段中處理測試更改的事件swift
- 26. Ruby rails - 文本字段更改事件和ajax
- 27. 確定在Vaadin中修改了哪些文本字段
- 28. 文本文件只限於數字
- 29. 哪些文件應該只讀爲TFS?
- 30. 用JQuery動態更改MDL文本字段文本
如何改變只讀文字?如果它正在改變,那麼你怎樣才能將它稱爲只讀文本? –