hazem hazem - 5 months ago 29
Objective-C Question

Disabling UIAlertView button

I am making a

UIAlertView
with a text input.

UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@"Save" message:@"Please Enter the Name of PDF" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
[alertView setAlertViewStyle:UIAlertViewStylePlainTextInput]


what i want to do when UITextField is empty i disable the OK button with a delegate function

- (BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView *)alertView
{

return NO;
}


When the user begins to write something in the textfield the OK button should become enabled.

Answer

Please try this

    - (BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView *)alertView
    {
        /* Retrieve a text field at an index - 
           raises NSRangeException when textFieldIndex is out-of-bounds.

         The field at index 0 will be the first text field
         (the single field or the login field),

         The field at index 1 will be the password field. */

         /*
         1> Get the Text Field in alertview

         2> Get the text of that Text Field

         3> Verify that text length

         4> return YES or NO Based on the length
         */

         return [alertView textFieldAtIndex:0].text.length > 0;

    }
Comments