2011-12-20 4 views
0

私のiPhoneアプリケーションからAddcontact clickの連絡先情報を追加しています。私はちょうど同じ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の連絡先に追加することができます。しかし、私はショールームの場所を検索するためにマップコントローラにユーザーが選択した文字列アドレスを渡すために他のコントローラを開くとき。同じコードが動作していません。私は連絡先を追加するだけですが、私は連絡先の編集ウィンドウを取得しませんでした。

編集: は、この問題である可能性があり、ナビゲーションコントローラバーに関してれるので、私は、このコードは、私はコードと私のアプリケーションでは、細かい感謝を動作することを実装してあなたのための作品であると思います

- (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]; 
} 
関連する問題