Вопрос

У меня есть список просмотров в режиме мульти-выбора.Я не хочу флажок.Я просто хочу, когда я нажимаю на предметы, они могли выделить, чтобы показать проверенное состояние.При нажатии снова выяснится, выделение исчезнут и не проверено.

Так что теперь моя проблема в том, что мои товары не проверяются и выделяют вообще.Я не знаю почему.

Вот код:

mFriendList.setAdapter(adapter);
        mFriendList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
        mFriendList.setOnItemClickListener(new FriendsItemClickListener());
        }
}


// The click listener for FriendsList
private class FriendsItemClickListener implements
        ListView.OnItemClickListener {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {
        Log.d("ItemClickPosition", String.valueOf(position));

        // if already checked, then uncheck
        if(mFriendList.isItemChecked(position)){
            mFriendList.setItemChecked(position, false);
            Log.d("OnItemClick", String.valueOf(mFriendList.isItemChecked(position)));
        }else{
            // if uncheck, then check
            mFriendList.setItemChecked(position, true);
            Log.d("OnItemClick", String.valueOf(mFriendList.isItemChecked(position)));
        }
    }
.

Теперь проблема в том, что элементы никогда не проверяются или показывают. И весь журнал I получил:

ItemClickPosition   0 
OnItemClick         false
ItemClickPosition   1 
OnItemClick         false
ItemClickPosition   2 
OnItemClick         false
.

Почему они не выбраны?

Это было полезно?

Решение

Используйте селектор, как ниже

highlight.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item 
        android:state_activated="true"
        android:drawable="@color/pressed_color"/>

</selector>
.

& Используйте это в вашем относительном / линейном макете, как приведены ниже

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

    android:layout_height="match_parent"


    android:background="@drawable/highlight"
>
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top