ListView и неопределенный ProgressBar - PullRequest
0 голосов
/ 06 мая 2010

Извините за вопрос, который может звучать глупо,

Но: как активировать ProgressBar в соответствии с ячейкой, на которой вы только что нажали?

У меня естьпредставление списка с меню, которое отображается после долгого нажатия.

Когда я нажимаю на одну из моих опций, я хотел бы отобразить панель ProgressBar в окне просмотра в соответствии с ячейкой, на которой я щелкнул.В настоящее время он всегда отображает одну из моих первых камер, что бы я ни делал

public boolean onContextItemSelected(MenuItem item) {
     AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();

     switch (item.getOrder()) {
        case 0:
                    mProgressBar = (ProgressBar)findViewById(R.id.welcome_progressbar);
                    mProgressBar.setVisibility(View.VISIBLE);
            ... some execution ....

                    return true;
        case 1:
                     ...

Кто-нибудь видит что-то не так?

1 Ответ

2 голосов
/ 06 мая 2010

Это потому, что findViewById находит первый экземпляр View в списке. Вы должны справиться с этим через состояния вашего элемента в вашем getView в адаптере. Вы можете попытаться использовать состояния, такие как выбранный / нажатый, или просто установить логическое значение для вашего элемента, проверить его в getView и показать / скрыть прогресс на основе этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...