У меня к классу наследуемому от DialogFragment подключен интерфейс DialogInterface.OnClickListener.
Как я понимаю, этот интерфейс требует реализовать вот эти методы. Два последних для чего нужны я понял.
@Override
public void onClick(DialogInterface dialog, int which) {
}
@Override
public void onDismiss(DialogInterface unused) {
super.onDismiss(unused);
}
@Override
public void onCancel(DialogInterface unused) {
super.onCancel(unused);
}
Судя по документации первый нужен для определения какая кнопка нажата и что выполнить. Если это так , то как мне воспользоваться им, чтобы я мог указать какой код должен выполниться при нажатии на кнопку , которая есть в разметке, которая подключена к этому диалог фрагменту. Первым делом я найду эту кнопку
Button vk_share = (Button)form.findViewById(R.id.vk_button);
А что дальше?
В документации сказано:
the button that was clicked (ex. BUTTON_POSITIVE) or the position of the item clicked
Раз ты наследуешься, это какое-то кастомное диалоговое окно? Вряд ли в этот интерфейс поступит ID от кастомной кнопки. Просто найди кнопку и задай ей нужный слушатель
UPD
Да, я понял тебя, но ты подключил кастомную кнопку через разметку, правда не знаю, можно ли так выражаться :D
Суть в том, что в обычном диалоговом окне есть три кнопки - positive, negative и neutral. Ну, что-то вроде ОК - ОТМЕНА... Их можно указать:
public class FireMissilesDialogFragment extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the Builder class for convenient dialog construction
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage(R.string.dialog_fire_missiles)
.setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// FIRE ZE MISSILES!
}
})
.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User cancelled the dialog
}
});
// Create the AlertDialog object and return it
return builder.create();
}
А заместо того, чтобы указывать слушатели сразу для таких кнопок, можно реализовать интерфейс, который ты написал. И тогда в метод onClick в переменную which поступит одна из трех констант - BUTTON_NEGATIVE, BUTTON_NEUTRAL или BUTTON_POSITIVE. Дальше уже я думаю понятно. Ссылки по теме - https://developer.android.com/guide/topics/ui/dialogs.html, https://developer.android.com/reference/android/content/DialogInterface.html#BUTTON_POSITIVE
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть массив строк, нужно удалить НЕповторяющиеся элементыНашла минималистичный код для удаления повторяющихся элементов:
Разрабатываю приложение для заказа едыМеню иногда меняется, поэтому его необходимо получать приложению извне
Есть две таблицы, как я могу закрепить одну таблицу за другую? Пример:
Вроде бы все нормально расставлено, а на практике наоборотПри загрузке страницы и открытии мобильного (!) меню, его пункты оказываются под...