iOS:使用corebluetooth库从不同的视图控制器进行通信

我正在做corebluetooth应用程序。 我开发了使用核心蓝牙框架的图书馆。我有4个视图控制器。在第一个视图控制器我有扫描button,当我点击扫描button第二个屏幕出现与扫描设备和这些设备出现在桌面。 当我点击表视图外设连接,并提供其信息,如服务和charactestics.When我回到第一个视图控制器时,我有一个button,称为电池状态,当我点击该button,它应该调用电池信息从第二个视图控制器连接外围。 以下是我的代码在第二个视图控制器

-(void)viewdidload { coreBle = [[CoreBLE alloc] init]; coreBle.delegate = self; } 

并连接设备

  - (IBAction)Go:(id)sender { if (periperal==nil) { UIAlertView *alert=[[UIAlertView alloc]initWithTitle:nil message:@"Select watch to connect" delegate:self cancelButtonTitle:@"Ok" otherButtonTitles: nil]; [alert show]; } else{ [coreBle connectToPeripheralAt:[periperal integerValue]]; NSLog(@"peripheral connected is %@",periperal); HUD.labelText = @"Connecting..."; [HUD showWhileExecuting:@selector(connectingtask) onTarget:self withObject:nil animated:YES]; } } 

如下所示从索引path值的select行连接外围设备

  - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { deviceselected= [NSString stringWithFormat:@"Table cell pressed. (%d)", indexPath.row]; periperal=[NSString stringWithFormat:@"%d",indexPath.row]; } 

上面的代码是用于连接第二个视图控制器中的外设。在第一个视图控制器中应该连接相同的外设。因此,我可以从中获取值。请帮助我

为什么不把CoreBLE代码单独移动到一个新类中。 在四个视图控制器中,只需调用相关方法即可获取有关CoreBLE的信息。 因为在你的UI操作中,你必须遵循四个视图控制器的顺序。