- (void)createBarButtons
{
UIBarButtonItem *myCheckButton = [[UIBarButtonItem alloc] initWithTitle:@"Check Records" style:UIBarButtonItemStylePlain target:self action:@selector(checkRecordsAction)];
UIBarButtonItem *mySaveButton = [[UIBarButtonItem alloc] initWithTitle:@"Save" style:UIBarButtonItemStylePlain target:self action:@selector(saveAction)];
[mySaveButton setTintColor:[UIColor colorWithRed:34.0/255.0 green:97.0/255.0 blue:221.0/255.0 alpha:1]];
NSArray *myButtonArray = [[NSArray alloc]initWithObjects:mySaveButton, myCheckButton,nil];
self.navigationItem.rightBarButtonItems = myButtonArray;
}
Я не знаю, подпадает ли этот вопрос под слишком локализованную категорию. Но помогите мне здесь. Итак, как вы видите, я создал два элемента кнопок панели. Сохранить - это просто сохранить данные в CoreData, работает нормально. Но контрольные записи должны запускать новый контроллер UITableviewcontroller.
- (void)checkRecordsAction
{
NSLog(@"the new stack action");
ITMSyncRecordsTVC *syncRecords = [[ITMSyncRecordsTVC alloc]init];
// [self presentViewController:syncRecords animated:YES completion:^{
// self.navigationController.view.superview.bounds = CGRectMake(0, 0, 250, 250);}];
[self.navigationController pushViewController:syncRecords animated:YES];
}
ITMSyncRecordsTVC
- это TableViewController
с кнопкой «Назад». Поэтому, когда я нажимаю на контрольные записи, он запускает контроллер tableview
, но в нем нет значений, и он не показывает кнопку панели «Назад», которую я на нее надел. До сих пор я прекрасно использовал переходы и раскадровки. Но как мне запустить новый контроллер представления без них, я не знаю. Мой первый прыжок в ios это ios6. Мне не хватает чего-то, чего я не знаю. Итак, дайте мне знать, как вызвать/запустить новый TableViewController. В Android у нас были намерения, которые сделали свое дело. Пожалуйста, дайте мне знать, если вам нужна дополнительная информация. Спасибо... РЕДАКТИРОВАТЬ: Итак, я отредактировал свой код checkRecordsAction
.
РЕДАКТИРОВАТЬ :
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
ITMOrdersVC *ordersVC = [[ITMOrdersVC alloc]init];
NSLog(@"at line 188 %d",indexPath.row);
if(indexPath.row < self.salesOrdersArray.count)
{
ordersVC.salesOrder = [self.salesOrdersArray objectAtIndex:indexPath.row];
NSLog(@"the sales purchase order number is %@",ordersVC.salesOrder.purchaseOrderNumber);
NSLog(@"done - 140");
[self.navigationController pushViewController:ordersVC animated:YES];
}
}
Таким образом, при выборе строки в контроллере табличного представления ITMSyncRecordsTVC он делает то же самое. Я получаю новый экран ITMOrdersVC с кнопкой панели «Назад» слева и 2 динамически генерируемыми кнопками панели. Я получаю 2 динамически генерируемые кнопки панели, но не назад. Я думал, что как только я щелкну строку, она «вернется» к предыдущему экрану, на который я передаю объект salesOrder. Следующим моим шагом было проверить, получаю ли я объект заказа на продажу из TVC, а затем загружаю его. Так что в основном только 2 экрана. Первый экран (сохраните, проверьте записи синхронизации). Второй экран нажмите а.) назад (перейти к первому экрану... ничего не делать) или б.) щелкните строку на втором экране и заполните первый экран без кнопки панели. Если это неясно, спросите меня.
ITMSyncRecordsTVC
? Звонят? Для того чтобы увидеть нормальную кнопку назад, нужно сделатьpushViewController
. - person iDev   schedule 21.12.2012