Я вижу, что ваш вопрос немного стар, и, возможно, у вас уже есть ответ на ваш вопрос, но вот решение для вашего класса, которое расширяет DialogPreference.
Сначала необходимо Переопределить метод onPrepareDialogBuilder
в вашем MelsMessage классе:
@Override
protected void onPrepareDialogBuilder(AlertDialog.Builder builder)
{
super.onPrepareDialogBuilder(builder);
builder.setNeutralButton("hello", this);
}
this
в методе setNeutralButton
- это интерфейс DialogInterface.OnClickListener
, который реализует класс DialogPreference .
Последнее, что вам нужно сделать, это Переопределить метод onClick
в вашем MelsMessage классе:
@Override
public void onClick(DialogInterface dialog, int which)
{
super.onClick(dialog, which);
switch (which)
{
case DialogInterface.BUTTON_POSITIVE:
// do things for the right button
break;
case DialogInterface.BUTTON_NEGATIVE:
// do things for the left button
break;
default:
// do things for the center button
break;
}
}
Если вы хотите обработать щелчок в другом классе, все, что вам нужно сделать, это реализовать DialogInterface.OnClickListener
в этом классе.
Надеюсь, это поможет вам. Приветствия.