ホームページ  >  記事  >  Java  >  Android カスタム リストビュー

Android カスタム リストビュー

高洛峰
高洛峰オリジナル
2016-12-13 17:01:031298ブラウズ

この記事では、カスタム リスト Android プログラムの実装について説明します。このプログラムは、カスタム アダプターを使用して
データをバインドし、contextView.setTag を介してデータをボタンにバインドする ListView を実装します。
システムがリスト (ListView) を表示すると、最初にアダプターがインスタンス化されます。この記事ではカスタム アダプターをインスタンス化します。カスタム アダプターを実装するには、データを手動でマップする必要があります。この場合、システムはリストの各行を描画するときにこのメソッドを呼び出します。
ListView が描画を開始すると、システムは自動的に getCount() 関数を呼び出し、関数の戻り値に基づいて ListView の長さを取得します。
この長さに基づいて、getView() を呼び出して各行を 1 つずつ描画します。 。
具体的な使用方法については、次のコードを参照してください。 Android カスタム ListView の 3 つのステップを覚えておいてください:
ステップ 1: メイン レイアウト ファイル、コンポーネント レイアウト ファイルなどを準備する
ステップ 2: データを取得して整理する
パート 3: バインディングデータ。ここでは、Adapter クラスを自分で記述して完成させます
1. まず、新しいリストを作成します。 使用法: LayoutInflater クラスは、実際の開発でも非常に役立ちます。その関数は findViewById() と似ていますが、違いは、LayoutInflater を使用してレイアウトの下の XML レイアウト ファイルを検索し、インスタンス化されることです。 。
getView() の 3 つのパラメータ: 位置はどの行が表示されるかを示し、covertView はレイアウト ファイルから拡張されたレイアウトです
。 LayoutInflater メソッドを使用して、定義された list.xml ファイルを表示用の View インスタンスに抽出します。次に、xml ファイル

内の各コンポーネントをインスタンス化して、データを各コンポーネントにマッピングできるようにします。ただし、クリック イベントに応答するには、ボタンにクリック リスナーを追加して、クリック イベントをキャプチャできるようにする必要があります。

3. activity_main.xml に ListView コントロールを追加します


Java コード

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent"  
    android:orientation="vertical" >  
    <LinearLayout android:layout_width="match_parent"  
        android:layout_height="match_parent"  
        android:orientation="horizontal" android:background="#f1e4f1">  
        <ImageView   
            android:id="@+id/image"  
            android:layout_width="wrap_content"  
            android:layout_height="wrap_content"/>  
        <TextView   
            android:id="@+id/title"  
            android:layout_width="wrap_content"  
            android:layout_height="wrap_content"  
            android:textColor="#666872"/>  
        <Button   
            android:id="@+id/view"  
            android:layout_width="wrap_content"  
            android:layout_height="wrap_content"  
            android:text="详细"/>  
    </LinearLayout>  
    <TextView   
        android:id="@+id/info"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:textColor="#666872"/>  
</LinearLayout>

4. アクティビティで ListView を呼び出します


Java コード


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。