0

質問を投稿するのは初めてですが、よろしくお願いします。

今、私はデフォルトのスタイルを実装したいと考えています UITableView には、複数のデータグループが含まれています。行ごとに、accessoryType アイコンとして詳細開示ボタンがあります。人々が開示ボタンをクリックすると、選択した行の詳細情報でセルが展開されます。

選択した行にカスタマイズされたセルを追加してこのタスクを実行しようとしましたが、非常に複雑でした。現在、カスタマイズされたセルxibで特定の行をリロードして、このタスクを完了しようとしています。reloadRowsAtIndexPaths のデリゲート メソッドがあることは知っていました。しかし、これを使用して特定のセルをリロードできますか? ありがとう

提案してください!

まことにありがとうございます

4

2 に答える 2

0

次のようなことを試しましたか:

(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
   if(indexPath.row == mySpecialSelectedCell)
   {
      //Load all your custom stuff here
   }
   else
   {
      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];
   }
   if (cell == nil) 
   {

   }

   return cell;
}

展開ボタンをクリックしたときに、セルの indexPath を取得する必要があります。

または、この回答を見ることができます。次に、上記のコードのように、その NIB で指定した 1 つのセルをロードし、残りを通常どおりにロードします。

于 2013-01-31T15:28:27.730 に答える
0

テーブルビュー デリゲート メソッドを実装して、拡張する必要があるセルの高さを設定できます。heightForRow メソッドに条件チェックを追加し、ユーザーがボタンをタップしたときに、条件を変更して高さを増やします。テーブルがリロードされると、このメソッドが呼び出され、セルがより大きな高さでリロードされます。

于 2013-01-31T20:42:54.417 に答える