Пользовательская кнопка Alertview Действие не вызывается - PullRequest
1 голос
/ 27 марта 2012

Я создаю собственный просмотр предупреждений с фоновым изображением и одной кнопкой (чтобы закрыть представление предупреждений). Но действие кнопки не вызывает

enter image description here

, вот мой код.

В .h файле

UIAlertView *alert;

В .m файле

alert = [[UIAlertView alloc] init];

            [alert setTitle:nil];
            [alert setMessage:nil];
            [alert setDelegate:self];


            UIImage *alertImage = [UIImage imageNamed:@"stopthegame.png"];
            UIImageView *backgroundImageView = [[UIImageView alloc] initWithImage :alertImage];

            backgroundImageView.frame = CGRectMake(0, 0, 282, 160);

            backgroundImageView.contentMode = UIViewContentModeScaleToFill;

            [alert addSubview:backgroundImageView];




   UIButton *alertok = [UIButton buttonWithType:UIButtonTypeCustom];


            alertok.frame = CGRectMake(105, 110, 75,40);

            UIImage *buttonImageNormal = [UIImage imageNamed:@"yesorno.png"];
            UIImage *strechableButtonImageNormal = [buttonImageNormal stretchableImageWithLeftCapWidth:12 topCapHeight:0];
            [alertok setBackgroundImage:strechableButtonImageNormal forState:UIControlStateNormal];
            UIImage *buttonImagePressed = [UIImage imageNamed:@"instructionok.png"];
            UIImage *strechableButtonImagePressed = [buttonImagePressed stretchableImageWithLeftCapWidth:12 topCapHeight:0];
            [alertok setBackgroundImage:strechableButtonImagePressed forState:UIControlStateHighlighted];

            [alertok setTitle:@"OK" forState:UIControlStateNormal];
            [alertok setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal ];


           [alert addSubview:alertok ]; 

[alertok addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];



 [alert show];

Вот код для отключения предупреждения

- (IBAction)buttonClicked:(id)sender
{

    [alert dismissWithClickedButtonIndex:0 animated:YES];

}

кто-нибудь, пожалуйста, помогите.Заранее спасибо

1 Ответ

1 голос
/ 17 апреля 2012

Нечто подобное вы создаете в пользовательском подклассе UIView и вызываете его при необходимости.https://github.com/FreeApple/CustomAlertView

+(void)showCustomPop:(CustomAlertViewType)type inView:(UIView*)view WithTitle:(NSString    
*)title Message:(NSString *)message  actionButtonTitle:(NSString*)actionTitle 
action:(void*)sel cancelButtonTitle:(NSString *)cancelTitle;
...