Везде, куда Вы передаете массив или Вектор, инициализируете их к пустым вместо пустого указателя. - Этот способ, которым можно избежать большой проверки пустой указатель и все хорошо:)
public class NonNullThing {
Vector vectorField = new Vector();
int[] arrayField = new int[0];
public NonNullThing() {
// etc
}
}
Вам нужно отключить представление. Если вы создаете представления, просто вызовите .setDisabled (boolean) в виде сверху. По моему опыту, отключение элемента списка работает не очень хорошо.
Вот решение, которое я использую. Я установил OnItemClickListener для своего ListView. Когда щелкают по элементу в списке, я беру переданный в View и вызываю для него setEnabled (false) . Это сделает элемент серым. Однако последующие щелчки по этому элементу все равно вызовут метод onItemClick. Таким образом, вам нужно будет при каждом нажатии проверять, включен / отключен ли элемент, и действовать соответствующим образом.