java.lang.NoSuchMethodError: android.view.ViewTreeObserver.removeOnGlobalLay的解决方案

来源:互联网 发布:千牛 mac 账号不存在 编辑:程序博客网 时间:2024/05/16 07:00

今天在做自定义ImageView时,重写onDetachedFromWindow()

@Override
protected void onDetachedFromWindow() {
// TODO Auto-generated method stub
super.onDetachedFromWindow();

getViewTreeObserver().removeOnGlobalLayoutListener(this);

}

报:java.lang.NoSuchMethodError: android.view.ViewTreeObserver.removeOnGlobalLay


因为版本的问题removeOnGlobalLayoutListener()是后面才加上去的,需要判断版本

改为:

             if(Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
getViewTreeObserver().removeGlobalOnLayoutListener(this);
} else {
getViewTreeObserver().removeOnGlobalLayoutListener(this);
}

这样就兼容了低版本的Android系统。

0 0
原创粉丝点击