私は、 "UITableViewController"という "Navigation Controller"で作られたアプリケーションを持っています。このアプリケーションには、検索フィールドを持つナビゲーション項目が含まれています。ストーリーボードでは、検索バーはTableView内にあります。performSelectorInBackgroundの後にcellViewを再ロード
サーバーからXMLをリクエストしていますが、メインスレッドで直接行うと非常に遅くなりますが、サーバーからの情報が「reloadData」でCellViewに表示されています。 しかし、私は "performSelectorOnBackground"を使ってデータを取得することができましたが、検索バーの "キャンセル"ボタンをクリックして、私が照会した結果を表示しなければなりません!
Iはすでに試み: "[self.tableView performSelectorOnMainThread:@selector(reloadData)withObject:ゼロのwaitUntilDone:NO];"それはそれを変更しません。最悪の場合、「cellForRowAtIndexPath」に「NSLog」を配置すると、配列の内容が表示されます。 "searchBarCancelButtonClicked"は完全に空です。
申し訳ありませんが、私の母国語ではありません。
EDIT 18/04/12: ここで、TableCellViewには非同期で正しくデータが取り込まれますが、問題があります。 XMLからのリクエストが準備ができたら、私は現在のビューのViewControllerでそれを見ることができます。しかし、前の結果をtableViewCellに「プッシュ」するためにsearchBoxに別の文字を入力する必要があります。 私の現在のビューでは、別のスレッド(dispatch_async)でXMLを解析する別の関数を呼び出すと、 "NSNotification"を送信するので、現在のビューはNSMutableArrayを初期化してフォームに入力します。誰かがそれをやる方法について考えているのですか?ありがとうございました!
こんにちは!答えをありがとうが、状況が変わった。今度はTableViewCellに値が設定されますが、軽度の問題があります。私は自分の投稿をupdataします。どうも ;) – Charles33