2 つのセクションを持つテーブルがあります。最初のセクションのセグメント化されたコントロールは、2 番目のセクションに表示される行を変更します。私の問題は、セグメント化されたコントロールのボタンを押すたびに、行の順序と 2 番目のセクションに表示される行が不適切にシフトすることです。
ユーザーは、名前、バーコード、カメラで写真を撮るという 3 つの方法で商品をショッピング リストに追加できます。UISegmentedControl
ユーザーが使用する方法を選択できるように、3 つのボタンがあります。ユーザーが選択したセグメントに応じて、2 番目のセグメントのフィールドが変更され、そのメソッドに関連するセルが表示されます。
Section 0:
0 row with segmented control showing name, barcode and camera buttons
Section 1:
// button zero, name button
0 row with textfield
1 row with textfield
or
// button 1, barcode button
0 row with textfield
or
// button 2, camera button
// shows camera view
各 UITextField にプレースホルダーを配置しました。
セグメント化されたコントロールのボタンがクリックされるpickOne:
たびに、テーブルビューを更新するメソッドを呼び出します。そのメソッドでは、(1, 1) の NSRange で NSIndexSet を構築し、NSIndexSet をreloadSections:
パラメーターとして UITableViewController のメソッドを呼び出します。
ビューが初めて表示されたときは問題ありませんが、ボタンを繰り返しクリックすると、セルの順序が変わります。button0 の 2 つの textField と新しい placeHolders を含むセルは、古いものに上書きされます。さらに悪いことに、ボタン 0 をクリックすると、2 つのセルのうちの 2 番目のセルしか表示されないことがあります。
私の詳細なコードはここで見ることができますhttp://pastebin.com/9GwMpCS9