diff --git a/library/src/main/java/cn/carbs/android/expandabletextview/library/ExpandableTextView.java b/library/src/main/java/cn/carbs/android/expandabletextview/library/ExpandableTextView.java index 3832ea4..bbb1a6b 100644 --- a/library/src/main/java/cn/carbs/android/expandabletextview/library/ExpandableTextView.java +++ b/library/src/main/java/cn/carbs/android/expandabletextview/library/ExpandableTextView.java @@ -391,52 +391,18 @@ public void onClick(View view) { } } - public View.OnClickListener getOnClickListener(View view) { - if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { - return getOnClickListenerV14(view); - } else { - return getOnClickListenerV(view); - } - } - - private View.OnClickListener getOnClickListenerV(View view) { - View.OnClickListener retrievedListener = null; - try { - Field field = Class.forName(CLASS_NAME_VIEW).getDeclaredField("mOnClickListener"); - field.setAccessible(true); - retrievedListener = (View.OnClickListener) field.get(view); - } catch (Exception e) { - e.printStackTrace(); - } + private View.OnClickListener mOnClickLis; - return retrievedListener; + public View.OnClickListener getOnClickListener(View view) { + return mOnClickLis; } - private View.OnClickListener getOnClickListenerV14(View view) { - View.OnClickListener retrievedListener = null; - try { - Field listenerField = Class.forName(CLASS_NAME_VIEW).getDeclaredField("mListenerInfo"); - Object listenerInfo = null; - - if (listenerField != null) { - listenerField.setAccessible(true); - listenerInfo = listenerField.get(view); - } - - Field clickListenerField = Class.forName(CLASS_NAME_LISTENER_INFO).getDeclaredField("mOnClickListener"); - - if (clickListenerField != null && listenerInfo != null) { - clickListenerField.setAccessible(true); - retrievedListener = (View.OnClickListener) clickListenerField.get(listenerInfo); - } - } catch (Exception e) { - e.printStackTrace(); - } - - return retrievedListener; + @Override + public void setOnClickListener(View.OnClickListener l) { + super.setOnClickListener(l); + mOnClickLis = l; } - /** * Copy from: * http://stackoverflow.com/questions