> Java > java지도 시간 > 본문

Android ListView에서 선택한 항목을 강조 표시하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-11-24 00:15:18
원래의
946명이 탐색했습니다.

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": 한 번에 하나의 항목만 선택할 수 있도록 합니다. time.
  • android:listSelector="#666666": 선택한 항목의 배경색을 지정합니다.

Java 코드에서는 항목 클릭 이벤트를 처리하고 그에 따라 세부 ListView를 표시합니다.

이 접근 방식을 따르면 선택한 항목의 세부 정보를 첫 번째 ListView에 표시하면서 첫 번째 ListView에서 선택한 항목을 강조 표시할 수 있습니다. 두 번째 ListView.

위 내용은 Android ListView에서 선택한 항목을 강조 표시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿