0

チャットアプリケーションを作成しています。

チャットメッセージビュー内に、最後の20メッセージをレンダリングし、プログラムでScrollViewに追加するアクティビティがあります。

それは実際にはかなりうまくそして速く動作します。

それを終えた後、私は考えるのをやめて、ListViewを使用してもっと簡単に(そしておそらくもっと効率的に)それを行うことができたことに気づきました。

本当に本当ですか?努力してビューをListViewに変更する必要がありますか?

4

4 に答える 4

2

主な理由の1つとして、「はい」と言いますListView。画面に表示されるビューをリサイクルして、非常に効率的にします。たとえば、小さい画面で6または7 ishのビューを保持し、それらを再利用するため、20ビューがメモリを占有していると言うよりもはるかに効率的です。簡単なことに関しては、それは議論の余地があります。しかし、間違いなくListViewをお勧めします。ScrollViewは速く感じるかもしれませんが、デバイスや他のアプリのパフォーマンス全般についても考える必要があります。

于 2012-08-17T07:29:38.433 に答える
0

アプリにチャット機能があり、アダプターを使用してメッセージをリストビューに膨らませています。以下は私のxmlレイアウトのサンプルです:

messages.xml

<LinearLayout
    <TextView </TextView>
    <ListView </ListView>
</LinearLayout>

message_item.xml

<RelativeLayout>
      <LinearLayout>
      <LinearLayout> 
      <LinearLayout>

      <LinearLayout>
      <TextView></TextView>
  <TextView></TextView>
      </LinearLayout>

      <TextView></TextView>
      </LinearLayout>

      <ImageView></ImageView>
      </LinearLayout>
      </LinearLayout>
      <TextView></TextView>
      </RelativeLayout>

それがお役に立てば幸いです:)

于 2012-08-17T07:41:37.453 に答える
0

Androidのソースコードをスキャンして、ListViewの実装方法を学ぶことができます。

その後、答えが見つかると思います。

ics / framework / base / core / java / android / widget / ListView.java

于 2012-08-17T07:43:10.397 に答える
0

そうですね、そのプロパティのために、listViewを使用する方が効率的だと思います。また、スクロールビューで行ったことには、ListViewと同じ機能があります。あなたは私が思うに車輪を作り直している。ここに良い例があります:)

于 2012-08-17T07:28:59.873 に答える