CBCentralManagerOptionShowPowerAlertKey AlertView / Alert Controller Кнопка ОК

В приложении я создаю видеоплеер с "дистанционным управлением" на двух разных устройствах iOS с использованием Bluetooth Low Energy (BLE), где одно устройство является видеоплеером, а другое отправляет сообщения для воспроизведения, паузы, перемотки и т. Д. Здесь у меня есть центральный менеджер, создаваемый с помощью CBCentralManagerOptionShowPowerAlertKey.

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], CBCentralManagerOptionShowPowerAlertKey, nil];
        centralManager = [[CBCentralManager alloc]initWithDelegate:self queue:nil options:options];

Контроллер предупреждений / предупреждений, аналогичный этому, появится, если на устройстве не включена настройка Bluetooth (у меня выделен жирным шрифтом).

CLBeaconRegion, как отключить предупреждение: включите Bluetooth, чтобы разрешить * для подключения к аксессуарам

Я хочу добавить больше функциональных возможностей к кнопке ОК, когда она нажата, кроме resignFirstResponder.

Чего мне не хватает, что мне нужно изменить то, что делает кнопка OK в этом контроллере / предупреждении? Методы, которые я указал, записали в журнал, но все равно не смогли поймать:

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
    NSLog(@"Button Index =%ld",(long)buttonIndex);
}

-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSLog(@"%ld", (long)buttonIndex);
}

-(void)alertViewCancel:(UIAlertView *)alertView
{
    NSLog(@"alert view cancel");
}

1 ответ

  1. Вам нужно изменить параметры CentralManager, форма [NSNumber numberWithBool:YES]; на [NSNumber numberWithBool:NO];
  2. реализовать CBCentralManagerDeletgate с помощью centralManagerDidUpdateState: метод.
  3. В centralManagerDidUpdateState: метод, который вы создадите alertview

    • (void) centralManagerDidUpdateState: (CBCentralManager *) central {if (_bluetoothManager.state == CBCentralManagerStatePoweredOff) {[[[[UIAlertView alloc] initWithTitle:nil message:@"мое предупреждение" делегат:self cancelButtonTitle: other Отмена ", ноль] показать]; } }
  4. В alertView:clikedButtonAtIndex: вы переопределите свой код

    -(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { NSLog(@"%ld", (long)buttonIndex); }

Другие вопросы по тегам