关于设置setSelection无效的问题
你好,感谢的控件为我提供了非常便利的功能,但是我在使用过程中发现setSelection没有作用
WheelView.WheelViewStyle wheelViewStyle = new WheelView.WheelViewStyle(); wheelViewStyle.backgroundColor = Color.TRANSPARENT; wheelViewStyle.holoBorderColor = getResources().getColor(R.color.appGray3); bookingAmPm = (WheelView) root.findViewById(R.id.booking_am_pm); bookingHours = (WheelView) root.findViewById(R.id.booking_hours); bookingMinutes = (WheelView) root.findViewById(R.id.booking_minutes); bookingAmPm.setSkin(WheelView.Skin.Holo); bookingAmPm.setStyle(wheelViewStyle); bookingHours.setSkin(WheelView.Skin.Holo); bookingHours.setStyle(wheelViewStyle); bookingMinutes.setSkin(WheelView.Skin.Holo); bookingMinutes.setStyle(wheelViewStyle); bookingAmPm.setWheelAdapter(new ArrayWheelAdapter(getContext())); bookingHours.setWheelAdapter(new ArrayWheelAdapter(getContext())); bookingMinutes.setWheelAdapter(new ArrayWheelAdapter(getContext())); bookingAmPm.setWheelData(Arrays.asList(getResources().getStringArray(R.array.booking_am_pm_array))); bookingAmPm.setWheelSize(Arrays.asList(getResources().getStringArray(R.array.booking_am_pm_array)).size()); bookingHours.setWheelData(Arrays.asList(getResources().getStringArray(R.array.booking_hour_array))); bookingHours.setWheelSize(Arrays.asList(getResources().getStringArray(R.array.booking_hour_array)).size()); bookingMinutes.setWheelData(Arrays.asList(getResources().getStringArray(R.array.booking_minute_array))); bookingMinutes.setWheelSize(Arrays.asList(getResources().getStringArray(R.array.booking_minute_array)).size()); // bookingAmPm.setSelection(Calendar.getInstance().get(Calendar.AM_PM)); // bookingHours.setSelection(Calendar.getInstance().get(Calendar.HOUR)); // bookingMinutes.setSelection(Calendar.getInstance().get(Calendar.MINUTE)); bookingAmPm.setSelection(1); bookingHours.setSelection(2); bookingMinutes.setSelection(3);
同时我在设置setWheelSize时会报“wheel size must be an odd number.”的错误,说数据必须为奇数,可是我数据的多少是由对方决定的不是我决定的,不知道这个控件该怎么用,谢谢
setWheelSize()方法是设置滚轮展示的个数,不是滚轮数据,WheelView类控件必须有一个选中的状态,因此滚轮个数必须是奇数。setSelection()方法是设置要显示的数据在滚轮选中状态的位置,具体可参考ListView的用法。