6

Xcode 4.4 を 4.5 にアップグレードしてから問題が発生しました。アプリを起動すると、検索バー コントローラーが表示されます。これをクリックすると、以前のようにキーボードが表示されますが、Mac キーボードまたはシミュレーター キーボードで何かを書くことができません。

しかし、ShareKit ボタンを使用すると、ツールバーからビューが表示されます。このShareKitビューを表示した後に検索バーコントローラーを使用しようとすると、機能します!!

このメソッドは次のように呼ばれます:

- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller
- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller

しかし、キーボードが応答せず、テキストを入力できないため、このメソッドは呼び出されません。

-(BOOL)searchDisplayController:(UISearchDisplayController *)controller
shouldReloadTableForSearchString:(NSString *)searchString 
- (BOOL)searchDisplayController:(UISearchDisplayController *)controller
shouldReloadTableForSearchScope:(NSInteger)searchOption

しかし、この方法を使用すると:

- (IBAction)share:(id)sender
{
    if (!_url) {
    return;
}

    SHKItem *item = [SHKItem URL:_url title:@"Share this URL"];
    SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];

    // ShareKit detects top view controller (the one intended to present ShareKit UI)     automatically,
    // but sometimes it may not find one. To be safe, set it explicitly
    [SHK setRootViewController:self];

    [actionSheet showFromToolbar:self.navigationController.toolbar];
}

検索バーのキーボードを使用できるようになった後。

iOS 6シミュレーターの前は完全に機能していたので、誰か助けてください...

ありがとう !

EDIT:それが機能するのを手伝ってくれてありがとう!!

mainWindow.xib Window 要素の「Visible at launch」をチェックするだけで動作します!

これが他の人に役立つことを願っています!

4

1 に答える 1

0

デリゲートを適切に設定する必要があります。この行を ViewDidLoad に書き込みます

 SearchbarObj.delegate=self;

または、xib でファイルの所有者へのデリゲート接続を設定します。

于 2013-04-22T07:06:39.970 に答える