リストビューにテーブルデータを表示しようとしています。データは8列と約50行で構成されています。1秒間に、約8つの更新データが送信されます。(つまり、row2-column5を何かに更新します。)新しいデータが来るたびに、専用セルを更新しdatasetchanged()
、アダプターを呼び出します。これにより、パフォーマンスとスクロールの問題が発生します。
私の質問は
、標準のウィジェットを使用してAndroidでストリームデータを表示する最良の方法は何ですか?
リストビューにテーブルデータを表示しようとしています。データは8列と約50行で構成されています。1秒間に、約8つの更新データが送信されます。(つまり、row2-column5を何かに更新します。)新しいデータが来るたびに、専用セルを更新しdatasetchanged()
、アダプターを呼び出します。これにより、パフォーマンスとスクロールの問題が発生します。
私の質問は
、標準のウィジェットを使用してAndroidでストリームデータを表示する最良の方法は何ですか?
更新が必要なアイテムのみを更新してみてください。そのためには、リストビューでのデータの位置が必要になります。
private void updateData(int position)
{
int firstItem = listView1.getFirstVisiblePosition();
View view = listView1.getChildAt(position - firstItem);
TextView tv = (TextView)view.findViewById(R.id.textview);
tv.setText("Example Text");
}
独自の Cursor を作成して CursorAdapter と AdapterView にプラグインするか、または ... MatrixCursor を使用します。MatrixCursor を使用すると、新しい「行」を追加できます。onChange()
次に、データが変更されたことをビューに通知するために呼び出すことができます。