2014-09-22 2 views
2

있음 iOS 8FBFriendPickerViewController는 (내 iOS 7은 (는) 모든 것이 완벽 함) 탐색 바없이 표시됩니다. Facebook-iOS-SDK v3.9.0을 사용하지만 최신 SDK를 확인한 결과 동일한 동작 (예 : Scrumptious이라는 샘플 프로젝트를 실행 함)이 있습니다.FBFriendPickerViewController (FBTaggableFriendPickerViewController)에는 내비게이션 막대가 없습니다

코드 : enter image description here

+1

안녕하세요, 내가 같은 상황에있어. 유용한 답변을 찾지 못했습니다.이 문제를 해결할 수 있습니까? 감사. – szokolov

+0

@szokolov 내 대답보기. – Shmidt

답변

3

것은 숨기고 밀어하지 않습니다 nav.bar 있는지 확인 :

- (void)pickFacebookFriends{ 
    FBFriendPickerViewController *friendPicker = [[FBFriendPickerViewController alloc] init]; 
    ABAddressBookCreateWithOptions(NULL, NULL); 
    ABPersonSortOrdering sortOrdering = ABPersonGetSortOrdering(); 
    ABPersonCompositeNameFormat nameFormat = ABPersonGetCompositeNameFormatForRecord(NULL); 

    friendPicker.sortOrdering = (sortOrdering == kABPersonSortByFirstName) ? FBFriendSortByFirstName : FBFriendSortByLastName; 
    friendPicker.displayOrdering = (nameFormat == kABPersonCompositeNameFormatFirstNameFirst) ? FBFriendDisplayByFirstName : FBFriendDisplayByLastName; 
    friendPicker.fieldsForRequest = [[NSSet alloc] initWithObjects:@"picture", nil]; 
    [friendPicker loadData]; 
    [friendPicker presentModallyFromViewController:self 
              animated:YES 
              handler:^(FBViewController *sender, BOOL donePressed) { 
               if (donePressed) { 
                if (friendPicker.selection.count > 0) { 

                 [self dismissViewControllerAnimated:YES completion:nil]; 
                } 
               }}]; 
    return; 

    [self presentViewController:friendPickerController animated:YES completion:nil]; 
} 

이 스크린 샷입니다.

[self.navigationController setNavigationBarHidden:NO animated:NO]; 

_taggableFriendPickerViewController = [FBTaggableFriendPickerViewController new]; 
[_taggableFriendPickerViewController loadData]; 
_taggableFriendPickerViewController.delegate = self; 
[self.navigationController pushViewController:_taggableFriendPickerViewController animated:YES]; 

#pragma mark - FBViewControllerDelegate 

///When you press on done button will call this method. 
- (void)facebookViewControllerDoneWasPressed:(FBViewController *)sender 
{ 
_arrayWithUsers = ((FBTaggableFriendPickerViewController *)sender).selection; 
} 
+0

이 경우 "완료"버튼을 클릭하면 해고 될 대리자 메서드를 알 수 없습니다. – Shmidt

+0

FBTaggableFriendPickerViewController의 대표자는 FBViewControllerDelegate입니다. 나는 그 대답을 편집했다. – Iraklii

+0

감사합니다 Iraklii! FBTaggableFriendPickerViewController가 작동하도록하기 위해 찾고 있던 코드와 동일합니다. –

0

는 그런 다음, <FBViewControllerDelegate>을 준수해야합니다

FBFriendPickerViewController *friendPicker = [[FBFriendPickerViewController alloc] init]; 
    friendPicker.delegate = self; 
    ABAddressBookCreateWithOptions(NULL, NULL); 
    ABPersonSortOrdering sortOrdering = ABPersonGetSortOrdering(); 
    ABPersonCompositeNameFormat nameFormat = ABPersonGetCompositeNameFormatForRecord(NULL); 

    friendPicker.sortOrdering = (sortOrdering == kABPersonSortByFirstName) ? FBFriendSortByFirstName : FBFriendSortByLastName; 
    friendPicker.displayOrdering = (nameFormat == kABPersonCompositeNameFormatFirstNameFirst) ? FBFriendDisplayByFirstName : FBFriendDisplayByLastName; 
    friendPicker.fieldsForRequest = [[NSSet alloc] initWithObjects:@"picture", nil]; 
    [friendPicker loadData]; 

UINavigationController *nc = [[UINavigationController alloc]initWithRootViewController:friendPicker]; 
[self presentViewController:nc animated:YES completion:nil]; 

- (void)facebookViewControllerDoneWasPressed:(id)sender{ 
    NSLog(@"%s",__PRETTY_FUNCTION__); 
    FBFriendPickerViewController *friendPicker = sender; 
    NSLog(friendPicker.selection.description); 
} 

결과는 다음과 같습니다 enter image description here

+1

@Schmidt 불행히도, 이것은 나를 위해 작동하지 않습니다, navbar가 없습니다. 사진을 첨부 할 수 없습니다. [link] (https://www.dropbox.com/s/4v4hmo2i2aujyp0/Screen%20Shot%202014-09-24%20at%2014.37.31.png?dl=0) – szokolov

+0

@szokolov 대신 friendPicker를 누르십시오. – Shmidt

+0

@Schmidt 감사합니다. 이것은 반 전투입니다. '완료'버튼이 있지만 '취소'버튼이 아직 없습니다. 이 사진 [https://www.dropbox.com/s/tiyusce5ce7g6ta/Screen%20Shot%202014-09-24%20at%2015.32.47.png?dl=0]을 참조하십시오. – szokolov

관련 문제