Throw a better error message when the automatic onClick handling doesn't work.
Change-Id: I61729e26f76a2ab8825e892cd6c70c06f0955e4c
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 7a0c445..e8bb736 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -2078,8 +2078,14 @@
mHandler = getContext().getClass().getMethod(handlerName,
View.class);
} catch (NoSuchMethodException e) {
+ int id = getId();
+ String idText = id == NO_ID ? "" : " with id '"
+ + getContext().getResources().getResourceEntryName(
+ id) + "'";
throw new IllegalStateException("Could not find a method " +
- handlerName + "(View) in the activity", e);
+ handlerName + "(View) in the activity "
+ + getContext().getClass() + " for onClick handler"
+ + " on view " + View.this.getClass() + idText, e);
}
}