WheelView
WheelView copied to clipboard
为什么我的集成进去之后,没有任何皮肤嘞?
如图片,没有任何颜色和图片
代码中也设置了: mWheelView1.setSkin(WheelView.Skin.Common); mWheelView2.setSkin(WheelView.Skin.Holo); mWheelView3.setSkin(WheelView.Skin.None);

这是DEMO运行后的效果,难道是不支持 Android 7.1 ?
解决了吗?
没有 放弃这个库了
看源码的 WheelView的第222行
private void addOnGlobalLayoutListener() { getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver .OnGlobalLayoutListener() { @Override public void onGlobalLayout() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { getViewTreeObserver().removeOnGlobalLayoutListener(this); } else { getViewTreeObserver().removeGlobalOnLayoutListener(this); } if (getChildCount() > 0 && mItemH == 0) { mItemH = getChildAt(0).getHeight(); if (mItemH != 0) { ViewGroup.LayoutParams params = getLayoutParams(); params.height = mItemH * mWheelSize; refreshVisibleItems(getFirstVisiblePosition(), getCurrentPosition() + mWheelSize / 2, mWheelSize / 2); setBackground(); } else { throw new WheelViewException("wheel item is error."); } } } }); }
他添加监听了以后 就去删除了导致后来的刷新 都出问题了。删掉
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { getViewTreeObserver().removeOnGlobalLayoutListener(this); } else { getViewTreeObserver().removeGlobalOnLayoutListener(this); }
就行了
我也遇到这个问题,两个WheelView联动,第一个皮肤正常显示第二个就没有,查了半天发现是因为组件初始化之后就必须马上调用setWheelAdapter和setWheelData,这样就能正常显示……