2016-03-16 5 views
0

Прежде всего я хотел бы сказать, если вы можете подумать о лучшем названии этой проблемы, не стесняйтесь изменять его, поскольку я не знаю, как объяснить это в краткой форме ,Редактировать кнопку в элементе списка в зависимости от других элементов списка.

Так вот моя проблема:

Для приложения Я пытаюсь сделать У меня есть эти графики, один график на сегодняшний день, и один для предстоящих дней. Оба они являются списком внутри фрагмента.

(я использовал те фрагменты для создания вкладок для того чтобы отделить два.)

Каждая игра (давайте называть их игры, потому что называя их деятельность будет сбивать с толку) на графике имеет статус, а вот где раздражает часть приходит. Меня попросили проверить, была ли запущена какая-либо игра, и если это необходимо, мне нужно отключить кнопки для запуска любой другой игры, кроме той, которая уже выполняется.

EDIT: Основная проблема заключается в том, что я не могу использовать findViewById по пункту списка следует, потому что, по-видимому, это нулевая ссылка на объект

Я сделал немного «краску» ИНГАМИ, чтобы дать вам больше графического представление.

Paint drawing of what it should be

Так Короче говоря, мне нужен способ, чтобы проверить status внутри каждой listview item внутри listview внутри fragment внутри activity использовать указанный статус, чтобы отключить все кнопки для одного из кроме продолжающаяся игра.

Маленькая заметка: если игры еще не запущены, все кнопки включены.

Я надеюсь, что это имело смысл.

Если вам нужен какой-то код для этого, не стесняйтесь спрашивать, но будьте осторожны, я делаю это внутри тестового приложения, так что много бесполезных данных тестирования и неаккуратного кода.

EDIT: Здесь я застрял в более ясном примере: Кнопки запуска включены, но должны быть отключены.

before scrolling

скроллинг далее вниз по списку, есть начало «игра» и прямо под ним, игра с тем же статусом, как и в предыдущей картине, где кнопка отключена, как это должно быть.

After a started game it shows like it should

Это происходит потому, что «isStartable» логический в моем коде идет к ложному после игры с состоянием «стартом» прошла и следующие пункты будут отключены.

Когда я прокручиваю резервную копию, так оно и должно быть, все элементы отключены, но мне нужно, чтобы они были такими, когда список заполняется. Любой способ обновить данные в этом списке и взять с собой «isStartable» с логикой?

Это то, на что похоже, после прокрутки назад. After scrolling back up

ответ

0

создать класс модели для элементов данных списка просмотров. Задайте логическую переменную в классе модели, например isGameStarted. Установите это переменный в соответствии с вашим result.Then в адаптере списка следует, поставить условие, как показано ниже

if(isGameStarted){ 
    holder.startButton.setEnable(true); 
else 
    holder.startButton.setEnable(false); 
+0

Я извиняюсь, но с классом модели, вы имеете в виду как класс игры со всеми играми атрибуты внутри? Я довольно большой noob, когда дело доходит до андроида: p – Madgarr

+0

Но тогда в любом случае это не поможет, потому что если эта игра будет запущена, остальные игры в списке должны отключить свою кнопку запуска. Поэтому мне нужно знать, как я могу использовать один элемент списка, чтобы определить, что мне нужно делать с другими элементами списка. – Madgarr

+0

вы можете сделать это с классом модели игры. Например, установите идентификатор игры в классе модели и измените условие, которое if (началосьGameId == currentModel.getId()), чем установлено startButton соответственно. –

 Смежные вопросы

  • Нет связанных вопросов^_^