2016-10-13 4 views
0

私のアプリにはtableViewがあります。私のアプリではユーザーが投稿を好きになるかもしれません(最良の例は図表です)。ポストが好きなときは、ボタンの状態がアクティブに変わり、ボタンの色が変わります。しかし、私はtableViewボタンの状態を正常に戻します。私はそれが再びセル再読み込みのために起こることを知っていますが、この問題の最良の解決策は何ですか?残念ながら、私はボタンアプリケーションのように要求とtableview reloadDataのように送信することを押している必要がありますか? (これはサーバーには適していません)iOSスウィフトのようなUITableViewのセルのボタン

EDIT:私はボタンのフラグを持っていますが、ボタンのように押すとリクエストを送信してdataArrayを再度フェッチする必要があります。どのようにボタンの状態を変更し、要求と同様に送信することはできますが、dataArrayは取得できません。ユーザーが手動でデータを更新するときに発生します。

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

+0

あなたが送信しなければならない要求は何ですか、なぜあなたはdataArrayをフェッチする必要がありますか? dataArrayとは何ですか? – FredericP

+0

Firebaseを使用していますか? –

+0

@FredericPのような要求は、私のポストのような真実か偽のユーザーを返信します – MohammadReza

答えて

0

セルデータをロードするdataArrayのポストを持つボタンのフラグがある場合は、そのフラグを使用してボタンの色を設定できます。スクロール時には注意が必要です。

+0

はい私はボタンのためのフラグがありますが、私は要求を送信し、dataArrayを再度フェッチする必要があります。どのようにボタンの状態を変更し、要求と同様に送信することはできますが、dataArrayは取得できません。ユーザーが手動でデータを更新するときに発生します。 – MohammadReza

1

ifとelseの条件を使用して設定できます。下記の例を参照してください

+0

私が好きなときに私は要求を送り、dataArrayをもう一度フェッチする必要があります。どのようにボタンの状態を変更し、要求と同様に送信することはできますが、dataArrayは取得できません。ユーザーが手動でデータを更新するときに発生します。 – MohammadReza

+0

シンプルなロジック。成功した応答でボタンのAPIステータスを変更することができます。 –

+0

しかし、ボタンを押すたびにreloadDataをtableViewにしたくないのです。 – MohammadReza

0

ナビゲーションインスペクタでボタンタイプをカスタムに設定し、デフォルトの背景画像を設定して選択します。以下のコードを使用してください:

// MARK: Set fav button Action 
    func setFavButtonAction(_ sender : UIButton) { 
     print(sender.tag) 
     if sender.isSelected == true { 
      sender.isSelected = false 
     }else{ 
      sender.isSelected = true 
     } 
    } 
関連する問題