एक UITextField को निष्क्रिय करने के लिए आसान तरीका?

वोट
42

वहाँ एक निष्क्रिय करने के लिए एक आसान तरीका है UITextFieldकोड में?

मेरा ऐप 12 है UITextFieldकि सभी डिफ़ॉल्ट रूप से चालू कर रहे हैं, लेकिन जब एक परिवर्तन मेरी सेगमेंट नियंत्रण में पता चला है मैं से कुछ को निष्क्रिय करना चाहते UITextFieldक्या सेगमेंट उपयोगकर्ता की पसंद पर निर्भर करता है।

बस इसे कैसे अक्षम करते हैं या गैर-संपादन योग्य बनाने के लिए पता करने की जरूरत?

धन्यवाद

01/03/2009 को 13:16
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


5 जवाब

वोट
98

ऑब्जेक्टिव-सी में:

textField.enabled = NO;

स्विफ्ट में:

textField.isEnabled = false

संदर्भ: UIControl.isEnabled

01/03/2009 को 13:31
का स्रोत उपयोगकर्ता

वोट
27

आप भी संकेत मिलता है कि पाठ क्षेत्र अक्षम किया गया है आप और अधिक कोड जोड़ने चाहिए चाहते हैं:

यदि UITextBorderStyleRoundedRect का उपयोग कर, आप केवल पाठ बाहर ग्रे कर सकते हैं:

textField.enabled = NO;
textField.textColor = [UIColor lightGrayColor];

यदि किसी अन्य शैली का उपयोग, आप भी पृष्ठभूमि बाहर ग्रे कर सकते हैं:

textField.enabled = NO;
textField.backgroundColor = [UIColor lightGrayColor];
01/05/2012 को 09:56
का स्रोत उपयोगकर्ता

वोट
10

यह सभी का सबसे सरल हो सकता है, जब आपके पास कई textfields भी:

viewDidLoad में: (केवल textfields जो संपादन योग्य नहीं होना चाहिए के लिए प्रतिनिधि निर्धारित किया है।

self.textfield.delegate=self;

और इस प्रतिनिधि समारोह सम्मिलित करें:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
return NO;
}

बस!

08/07/2013 को 18:40
का स्रोत उपयोगकर्ता

वोट
1

UIView पर श्रेणी करें।

उस श्रेणी में तरीकों का पालन जोड़ें।

-(void)disable {
    self.alpha = 0.5;
    self.userInteractionEnabled = FALSE;
}

-(void)enable {
    self.alpha = 1.0;
    self.userInteractionEnabled = TRUE;
}

तो बस फोन

yourTextField.disable();

वास्तव में, आप किसी भी विचार है कि आप चाहते हैं पर इस का उपयोग कर सकते हैं।

02/09/2016 को 06:51
का स्रोत उपयोगकर्ता

वोट
-1

आप के अनुरूप होना चाहिए UITextFieldDelegateऔर वापसी falseइस विधि में। इस तरह से पाठ क्षेत्र अभी भी चयन है, लेकिन यह संपादन और काटने के लिए उपलब्ध नहीं है

कोड स्विफ्ट 4 में है

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
  return false
}
18/05/2018 को 12:40
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more