У меня проблемы с моим первым приложением (изучаю android studio как i go), я пытаюсь вставить диалоговое окно с предупреждением всякий раз, когда пользователь нажимает на элемент списка, чтобы убедиться, что он хочет удалить пункт. Однако я не могу заставить его работать, вот код, если вам нужно больше, просто попросите его. О, я, кстати, португальский, так что не запутайтесь с переменными.
public class MainActivity extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemClickListener {
private EditText tarefasET;
private Button btn;
private ListView tarefasList;
private ArrayList<String> tarefas;
private ArrayAdapter<String> adapt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tarefasET = findViewById(R.id.todoEditText);
btn = findViewById(R.id.addBtn);
tarefasList = findViewById(R.id.lvTarefas);
tarefas = FileHelper.lerData(this);
adapt = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, tarefas);
tarefasList.setAdapter(adapt);
btn.setOnClickListener(this);
tarefasList.setOnItemClickListener(this);
}
@Override
public void onClick(View view) {
switch(view.getId()){
case R.id.addBtn:
String newTarefa = tarefasET.getText().toString();
adapt.add(newTarefa);
tarefasET.setText("");
FileHelper.escreve(tarefas, this);
Toast.makeText(this, "Tarefa Adicionada", Toast.LENGTH_SHORT).show();
break;
}
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int posicao, long id) {
AlertDialog confirmDialog = new AlertDialog.Builder(this)
.setTitle("Confirmação")
.setMessage("De certeza que pretende eliminar a tarefa?")
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
tarefas.remove(posicao);
adapt.notifyDataSetChanged();
FileHelper.escreve(tarefas, this);
Toast.makeText(this, "Tarefa Eliminada", Toast.LENGTH_SHORT).show();
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
}
}
Что я могу сделать? Приложение должно быть списком дел, и я уже могу добавлять и удалять файлы. Но я хотел сделать диалоговое окно подтверждения, когда пользователь решит удалить элемент, который ему нужно сделать. Но код дает мне следующую ошибку, когда я пытаюсь запустить приложение в эмуляторе.
ошибка, которую я получаю