2011-12-20 4 views
0

Я добавляю контактную информацию из своего приложения iPhone на ссылку Addcontact. Я просто хочу открыть окно редактирования контакта на том же клике Addcontact, чтобы пользователь мог редактировать или удалять только что добавленный контакт. Я сделал что-то похожее ниже.Как открыть окно «Изменить контакт» в приложении iphone?

- (IBAction)AddContact 
{ 
ABAddressBookRef addressBook = ABAddressBookCreate(); 
ABRecordRef Showroom = ABPersonCreate(); 

//adding contact name as showroom name 

ABRecordSetValue(Showroom, kABPersonFirstNameProperty, ShowroomName.text , nil); 
    ABAddressBookAddRecord(addressBook, Showroom, nil); 
ABAddressBookSave(addressBook, nil); 
// Fetch the address book 
//ABAddressBookRef addressBook = ABAddressBookCreate(); 
// Search for the person named "Appleseed" in the address book 

    //ABRecordRef Showroom = (ABRecordRef)[Showroom objectAtIndex:0]; 
    ABPersonViewController *picker = [[[ABPersonViewController alloc] init] autorelease]; 
    picker.personViewDelegate = self; 
    picker.displayedPerson = Showroom; 
    // Allow users to edit the person’s information 
    picker.allowsEditing = YES; 
[self.navigationController pushViewController:picker animated:YES]; 
} 

это мое приложение карты. При запуске я получаю результаты шоу с контактами. Это я могу добавить в контакт iPHone с открытием окна редактирования контакта. Но когда я открываю другой контроллер, чтобы передать выбранный пользователем строковый адрес в контроллер карты для поиска места в салоне. Тот же код выше не работает. Я имею в виду, что это только добавляет контакты, но я не получил окно редактирования контактов.

Edit: Может быть этой проблемой касается навигации контроллера бара поэтому проверьте приведенный ниже код и

- (void)viewWillAppear:(BOOL)animated 
    { 
    [self.navigationController setNavigationBarHidden:YES animated:animated]; 
    } 
    - (void)viewDidLoad { 

[self.navigationController setNavigationBarHidden:NO ]; 
self.navigationController.navigationBar.tintColor = [UIColor colorWithRed:25.0/255.0f green:25.0/255.0f blue:25.0/255.0f alpha:1.0f]; 
    } 
- (void)viewWillDisappear:(BOOL)animated 
{ 
[self.navigationController setNavigationBarHidden:NO animated:animated]; 
} 
+0

Можете ли вы пересмотреть свою проблему? – Sarah

+0

это приложение моей карты. При запуске я получаю результаты шоу с контактами. Это я могу добавить в контакт iPHone с открытием окна редактирования контакта. Но когда я открываю другой контроллер, чтобы передать выбранный пользователем строковый адрес в контроллер карты для поиска места в салоне. Тот же код выше не работает. Я имею в виду, что это только добавляет контакты, но я не получил окно редактирования контактов. –

+0

Возможно, это связано с тем, что я скрываю контроллер навигации в ViewWillAppear и скрываю его в ViewwillDisAppear. Я не хочу панель контроллера навигации, но я хочу вернуться к моему приложению –

ответ

0

Я надеюсь, что этот код работает для вас я реализую этот код и в моем приложении работает отлично спасибо вы

contecviewcontroller.h 
@interface DetailsViewController : UIViewController 
DocumentNavController *coffeeObj; 
editViewController *evController; 
int currentindex; 
} 

@property (nonatomic, retain) DocumentNavController *coffeeObj; 
@property (readwrite, assign) int currentindex;  
@end 

contecviewcontroller.m

- (void)viewDidLoad { 
    [super viewDidLoad]; 
//self.navigationController.toolbar.tintColor = [UIColor darkGrayColor]; 
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] 
              initWithBarButtonSystemItem:UIBarButtonSystemItemEdit 
              target:self action:@selector(goToEdit)]autorelease]; 
} 


-(void)goToEdit{ 

if(evController == nil) 
    evController = [[editViewController alloc]initWithNibName:@"editViewController" bundle:nil]; 
evernoteAppDelegate *appdelegete = (evernoteAppDelegate *)[[UIApplication sharedApplication]delegate]; 
coffeeObj = [appdelegete.noteArray objectAtIndex:currentindex]; 

evController.Editcurrentindex = currentindex; 
evController.docedObj = coffeeObj; 
[self.navigationController pushViewController:evController animated:YES]; 
} 
Смежные вопросы