У меня есть onLongClickListener, который сбрасывает некоторые значения при вызове.Я хотел бы объявить alertDialog, чтобы проверить, действительно ли пользователь хочет сбросить все значения.Однако я не испытываю радости от того, что он работает.
Секция сброса прекрасно работает сама по себе, но если я пытаюсь добавить AlertDialog, я получаю следующую ошибку:
Несколько маркеров вэта строка - Конструктор AlertDialog.Builder (новый View.OnLongClickListener () {}) не определен - Точка останова строки: SatFinder [line: 174] - onLongClick (View)
Что именно это означает икак я могу это исправить?Большое спасибо.
Ниже приведен раздел кода.Обратите внимание, что в этом примере предупреждение ничего не дает.Я изменю это после того, как я преодолею ошибку выше.
resetAll = new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
// set the message to display
alertbox.setMessage("This is the alertbox!");
// set a positive/yes button and create a listener
alertbox.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
// do something when the button is clicked
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(getApplicationContext(), "'Yes' button clicked", Toast.LENGTH_SHORT).show();
}
});
// set a negative/no button and create a listener
alertbox.setNegativeButton("No", new DialogInterface.OnClickListener() {
// do something when the button is clicked
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(getApplicationContext(), "'No' button clicked", Toast.LENGTH_SHORT).show();
}
});
alertbox.show();
// Resets all values and radio buttons
pos1_deg.setText("0.0");
pos2_deg.setText("0.0");
pos1_az.setText("0.0");
pos2_az.setText("0.0");
targetDeg.setText("0.0");
blurg.setText("----");
radio1.setChecked(false);
radio2.setChecked(false);
radio3.setChecked(false);
radio1E.setChecked(true);
radio2E.setChecked(true);
radio3E.setChecked(true);
Toast.makeText(getApplicationContext(),
"Reset", Toast.LENGTH_LONG).show();
return true;
}
};