2016-04-01 33 views
3

私はRecycleViewを持っており、RecycleView内のすべての行をループして、項目がMySQLデータベースにまだ挿入されていない行を探したいとします。インターネットに接続できる場合は、自動的にデータベースにアップロードしたいと思っています。アップロードが成功した場合、ステータスを挿入済みに変更したいと思います。どうすればいいのですか?リストビューアイテムをmysqlデータベースに挿入

------------------------- 
*Item* | *Status* | 
------------------------- 
Apple | Not Inserted | 
------------------------- 
Egg | Inserted  | 
------------------------- 
Orange| Not Inserted | 
------------------------- 
+1

あなたは編集テキストを持っていますが、編集テキストのデータ編集者はそれらをdbに追加します。 –

答えて

1

あなたのbusiness logicからあなたpresentationを分離しなければなりません。あなたのrecyclerView's責任はあなたのdata modelを表示するだけです。したがって、data modelを変更し、recyclerViewUIを更新するように依頼するだけです。したがって、recyclerViewの行ではなく、data modelをループする必要があります。

ソリューション:

あなたのdata modelsのすべてをループがあなたのadapterが、その後、彼らはqueueに入れ、それらを一つ一つをアップロードしていることができます。

たとえば、queueintentServiceに渡してアップロードを開始できます。終了後、eventBusOttoLocalBroadcastを使用してactivityまたはfragmentに通知できます。データ・モデルの状態をinsertedに更新し、行ったことをアダプターに通知します。

ただし、ユーザーがそのアクティビティからナビゲートして、データモデルをデータベースに保存し、読み込んだり更新したりすることが最もクリーンな解決策であることに注意してください。

+0

あなたはその例がありますか?私はアンドロイドの開発に新しいです、そして、私はキューが何であるか分かりません。 – 1033

+1

キューの代わりに、ArrayListを使用することができます。例えば、 'intentService'は何ですか?理解した後、次のステップに進み、 'intentService'にデータを渡す方法を教えてください。データをアップロードする方法と.... –

関連する問題