在android維護或者開發的時候,經常和應用的同事幹仗。
原因就是某些測試情況下,按鍵或者點擊沒有被相應。
app同事說:我草,你大爺,我就沒收到,我沒法相應。
這個時候爲了打臉,你就需要在fw添加log,打印的log可以清楚的看到,事件到底派發給誰了。
文件view.java中函數
public boolean performClick() {
sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);
ListenerInfo li = mListenerInfo;
if (li != null && li.mOnClickListener != null) {
playSoundEffect(SoundEffectConstants.CLICK);
li.mOnClickListener.onClick(this);
return true;
}
return false;
}
就在此函數中添加log即可。
通過打印this及是否返回true來看:是派發給誰了,這個誰有沒有響應,或者根本就沒有設置onlick的listener。
public boolean performClick() {
sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);
ListenerInfo li = mListenerInfo;
if (li != null && li.mOnClickListener != null) {
playSoundEffect(SoundEffectConstants.CLICK);
li.mOnClickListener.onClick(this);
android.util.Slog.d("TAG=======>VIew", " performClick this:"+this);
return true;
}
android.util.Slog.d("TAG=======>VIew", " performClick false this:"+this);
return false; }