2009-08-05 5 views
-6

突然、編集モードではセルを移動できません。私がする前に 。セルの並べ替え - 動作を停止します

私は何も変更しませんでした。

THXは

+0

サンプルコードを投稿して質問を展開してください。 – Daniel

+0

この質問は不明です。そして、それはプログラミング関連のようではありません。多分あなたはsuperuser.comを試してみるべきですか? –

+0

iPhoneで、彼はUITableViewで編集モード中にセルの並べ替えを話しています。 – Amagrammer

答えて

3

[OK]を、この質問は少しひそか-文言ですが、私は、パズルが好き! :-)

「編集」モードに入ると、3つの小さな線が各セルの隣に表示されますが、セルを "ピックアップ"しようとすると、移動しません。

重要なことのdonodareは、あなたのテーブルビューコントローラクラスに次のメソッドを実装していることを確認することです。

// Override to support conditional rearranging of the table view. 
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { 
    // Return NO if you do not want the item to be re-orderable. 
    return YES; 
} 

これは再配置できるようになります。

ユーザーが並べ替えた後に何が起こるかを処理しなければならないことに注意してください。そうでない場合は、セルの「放す」のときに元の位置にポップアップします。

あなたはやるべきことは、あなたのテーブルビューコントローラクラスに次のメソッドをオーバーライドすることによって:

// Override to support rearranging the table view. 
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath { 
// Custom code. NOTE - do not call ReloadData in this method or your app will crash! 
} 

希望私は同様の問題を抱えている

+0

完了しました。 動作しません。 – Shay

0

を助け、そしてこの記事は、関連のみのようですGoogleヒット。

私はシミュレータでうまく動作しますが、iPhoneではセルの並べ替えができません。

デバイス上で、ドラッグハンドルが表示されます(canMoveRowAtIndexPath:は正しく設定されています)。ドラッグハンドルをタップアンドホールドすると、通常と同じようにセルが強調表示されます。私がドラッグを開始するとすぐに、ハイライトは消え、セルはそのままになります。文字通り、全く動きません。

ロギングを通じて、私はmoveRowAtIndexPath:toIndexPath:がセルがドロップされたときに呼び出されていることがわかります。

ドラッグ可能なターゲットを制限しています。 Logは、targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath:ISがシミュレータで実行されているときに呼び出されますが、電話で実行中は呼び出されないことを示します。また、この方法を実装する前に問題が発生していました(元の設計では必要ありませんでしたが、新しい設計はありますが、この方法で問題が解決されることも期待されていました)。他のすべての実装されたメソッドが正常に動作しているように見えるので、発砲しない唯一のデリゲートメソッドであるようです。コードは電話でうまく動作する私のプロジェクトの別のものから取られました。このメソッドが正常に動作している場合でも、セルをドラッグすることはできますが、許可された場所にしかドロップできません。私は細胞を動かすことさえできません。

私はIBの関連するオプション、およびテーブルビュー、デリゲート、およびセルのドキュメントを検索しました。 がこのような動作をしたければ有用であることを示唆しているものは何も見つかりません。したがって、有効にするか無効にするのかが分かりません。シミュレータでは単一のデリゲートメソッドが起動するが、電話では起動できない理由は何か?

OS 3.0/3.0.1、オリジナルiPhoneは、複数のデバイスで発生します。

0

ちょうど同じ事が私に起こりました - 私は年齢を過ごしてデータをロードしました。そして、私が最後に行ったとき、私はもう何も移動できませんでした。私はグーグルでこのスレッドを見つけました。問題は、あるビューからすべてのビューに移動した加速度計のものが原因であることが判明しました。

私は問題の実際の理由を知りたいですが、私は修正を見つけられたことをとてもうれしく思っています。

ありがとうございました!

関連する問題