Я создаю список флажков с помощью кнопки программно. Для целей обновления мне нужно удалить старый список и кнопку флажка перед созданием нового в delete_ element method
. Как установить видимость в GONE
в методе delete_element
? Как я могу проверить, существуют ли они уже или нет, прежде чем установить их на GONE
? Как я могу получить свой идентификатор в delete_element
меняУстановите кнопку «Показать» и установите флажок «GONE»
java.lang.NullPointerException: Попытка вызвать виртуальный метод «недействительным android.widget.Button.setVisibility (INT)» на нулевой ссылки на объект
код в MainActivity:
ArrayList<Integer> items = new ArrayList<Integer>();
LinearLayout ll;
.
.
.
.
@Override
public void onAsyncTaskFinished(ArrayList<Integer> result) {
remove_elements();
createCheckboxList(result);
}
private void remove_elements() {
for (int i : items) {
CheckBox ch = (CheckBox) findViewById(i);
ch.setVisibility(View.GONE);
}
Button btn = (Button) findViewById(1);
btn.setVisibility(View.GONE);
}
private void createCheckboxList(final ArrayList<Integer> items) {
this.items = items;
final ArrayList<Integer> selected = new ArrayList<Integer>();
ll = (LinearLayout) findViewById(R.id.lila);
for (int i = 0; i < items.size(); i++) {
CheckBox cb = new CheckBox(this);
cb.setText(String.valueOf(items.get(i)));
cb.setId(items.get(i));
ll.addView(cb);
}
Button btn = new Button(this);
btn.setLayoutParams(new LinearLayout.LayoutParams(500, 150));
btn.setText("submit");
btn.setId(1);
ll.addView(btn);
btn.setOnClickListener(new View.OnClickListener() {
}
}
, но почему нужно удалить, просто проверьте перед добавлением новых данных l ike адаптер не имеет значения null и имеет счет, если да, чем чистый адаптер и устанавливает адаптер с новыми данными каждый раз, когда он первый раз. –