1

常に変更する必要がある、最適なビューまたはアクティビティ パフォーマンスを探しています。新しい要素が常に会話に追加される、ある種の「会話」ベースのリストを想像してみてください。

ここでカーソルは適切でしょうか? ListActivity はどうでしょうか。

選択は重要ですか?パフォーマンスの面で顕著な違いはありますか? 私が Android 開発の初心者であることを (今では) 理解していると思います。お分かりできると良いのですが。

4

3 に答える 3

1

組み込みのSMSAndroidアプリのソースコードを見ましたが、これがレイアウトです

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"  >

    <ListView android:id="@android:id/list"
        style="?android:attr/listViewWhiteStyle"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:drawSelectorOnTop="false"
        android:scrollbarStyle="insideOverlay"
        android:background="@android:color/white"
        android:cacheColorHint="@android:color/white"
        android:fadingEdgeLength="16dip" />

    <TextView android:id="@+id/empty"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:text="@string/loading_conversations"
        android:textAppearance="?android:attr/textAppearanceMedium" />
</RelativeLayout>

したがって、「会話」アプリを作成している場合は、ListViewパフォーマンスの問題なしで安全に使用できます。

于 2013-02-01T21:18:49.667 に答える
0

あなたは本当にここで物事を逆に考えています。情報を効果的に表示するUIデザインを考え出します。次に、その設計を実装する方法を理解します。それまでは、個々のクラスについて考えないでください。

ちなみに、メインビューがほとんどListViewである場合にのみ、ListActivityを使用します。また、dbリクエストを行う場合にのみカーソルを使用します。どちらのタイプも考えないでしょう-すべてのアプリ(多くの場合、複数)に対して独自のカスタムアクティビティを作成し、カーソルタイプをまったく選択しません-使用しているデータソースは必要に応じて1つ渡します。

于 2013-02-01T21:11:30.500 に答える
0

それはあなたの要件に依存します。ほとんどの場合、多くの異なるタイプのビューを使用して問題を解決できますが、ビューを長時間開いたままにしておくと、ビューに追加 (または削除) するだけだと、ますます多くのメモリが消費されます。これは通常、いくつかのアイテムを削除して、該当する場合はリロードする戦略が必要であることを意味します (たとえば、「会話」の早い段階から削除し、上にスクロールしたときに元に戻すなど)。私が実際に を使用することはめったにありませんが、通常の a で s をListActivity使用することだけを好む傾向がありますが、それ自体には何の問題もありません。あなたが説明したことから、私は間違いなく何らかの形を検討します。また、アダプターは s に対応するものであるため、アダプターがどのように機能するかについても学習してください。ListViewActivityListActivityListViewListView

于 2013-02-01T21:16:31.633 に答える