ホームページ > Java > &#&チュートリアル > Android ListViewで選択した項目を強調表示したままにする方法は?

Android ListViewで選択した項目を強調表示したままにする方法は?

Barbara Streisand
リリース: 2024-11-24 00:15:18
オリジナル
995 人が閲覧しました

How to Keep a Selected Item Highlighted in an Android ListView?

Android ListView では、選択した項目が強調表示されたままになります

このスレッドでは、ListView で選択した項目を、たとえ選択した項目の詳細が別の ListView に表示されます。

まず、XML を定義しましょうレイアウト:

<ListView
    android:id="@+id/cli_lista"
    android:layout_width="512dp"
    android:layout_height="wrap_content"
    android:choiceMode="singleChoice"
    android:listSelector="#666666"
    />

<ListView
    android:id="@+id/cli_lista_det"
    android:layout_width="512dp"
    android:layout_height="wrap_content"
    android:fadeScrollbars="false"
    />
ログイン後にコピー

次に、Java コードを見てみましょう:

Cursor cursor = db.rawQuery("Select NrCl||';'||Nome From Clientes", null);
final ListView t = (ListView)findViewById(R.id.cli_lista);
ArrayAdapter<String> myarrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, listItems);
t.setAdapter(myarrayAdapter);

final ListView td = (ListView)findViewById(R.id.cli_lista_detalhe);
final ArrayAdapter<String> myarrayAdapter2 = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, listItems2);

t.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        String item = ((TextView)view).getText().toString();
        String[] strArray = item.split("\;");

        cli.load(strArray[0].toString());
        td.setAdapter(myarrayAdapter2);
        listItems2.clear();
        listItems2.add("Nome: " + cli.getNome());
        listItems2.add("Morada: " + cli.getMorada());
        listItems2.add("Localidade: " + cli.getLoca());
        listItems2.add("Código Postal: " + cli.getCp());
        listItems2.add("Pais: " + cli.getPais());
        listItems2.add("Nif: " + cli.getNif());
        listItems2.add("Tel: " + cli.getTel());
        listItems2.add("Tlm: " + cli.getTlm());
        listItems2.add("Tipo Preço: " + cli.getTipoPvn());
        listItems2.add("Cond. Pagamento: " + cli.getCpg());
        listItems2.add("Obs: " + cli.getObs());
        td.setAdapter(myarrayAdapter2);
        myarrayAdapter2.notifyDataSetChanged();
    }
});
ログイン後にコピー

XML レイアウトでは、次のように指定します:

  • android:choiceMode= "singleChoice": これにより、一度に 1 つの項目のみを選択できるようになります。 time.
  • android:listSelector="#666666": 選択したアイテムの背景色を指定します。

Java コードでは、アイテムのクリック イベントを処理し、

このアプローチに従うと、最初の ListView で選択した項目を強調表示したままにし、2 番目の ListView で選択した項目の詳細を表示できます。リストビュー。

以上がAndroid ListViewで選択した項目を強調表示したままにする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート