Я нашел следующий код в источнике View.java:
public void onClick(View v) {
if (mHandler == null) {
try {
mHandler = getContext().getClass().getMethod(handlerName,
View.class);
...
-> Представления используют свой контекст для разрешения метода обработчика onclick.
Новый код из источника Dialog.java:
public Dialog(Context context, int theme) {
mContext = new ContextThemeWrapper(context, theme == 0 ? com.android.internal.R.style.Theme_Dialog : theme);
...
В конструкторе диалога создается экземпляр ContextThemeWrapper, который устанавливается в качестве контекста. Этот экземпляр не является ни пользовательским классом диалога, ни вызывающим действием, которое может быть местом для реализации метода обработчика. Поэтому представления не могут найти метод обработчика onclick.
Но мне нужно использовать атрибут XML onclick. Есть ли обходные пути?