我在做corebluetooth应用程序。并使用corebluetooth framework.i开发了库。有4个视图控制器。在第一个视图控制器中,当我点击扫描按钮时,我有扫描按钮第二个屏幕出现扫描设备,这些设备出现在tableview中。当我点击表格视图外围设备连接并提供其信息,如服务和charactestics。当我回到第一个视图控制器时,我有一个叫做电池状态的按钮,当我点击该按钮时,它应该从连接的第二个视图控制器调用电池信息外围。 以下是我在第二个视图控制器中的代码
-(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];
}
}
将外围设备从索引路径值的选择行连接到下面
- (void)tableView:(UITableView *)tableView
didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
deviceselected= [NSString stringWithFormat:@"Table cell pressed.
(%d)", indexPath.row];
periperal=[NSString stringWithFormat:@"%d",indexPath.row];
}
上面的代码用于连接第二个视图控制器中的外设。在第一个视图控制器中应该连接相同的外围设备。所以我可以从中检索值。请帮助我
答案 0 :(得分:1)
为什么不在新类中单独将CoreBLE代码移动到单个实例。在四个viewcontrollers中只需调用相对方法来获取有关CoreBLE的信息。因为在你的ui操作中,你必须遵循四个视图控制器序列。