public interface IWheelPicker
Interface of WheelPicker
New project structure
| 限定符和类型 | 方法和说明 |
|---|---|
int |
getCurrentItemPosition()
获取当前被选中的数据项所显示的数据在数据源中的位置
与
getSelectedItemPosition()不同的是,该方法所返回的结果会因为滚轮选择器的改变而改变
Get the position of current selected item in data source
The difference between getSelectedItemPosition(), the value this method return will
change by WheelPicker scrolled |
int |
getCurtainColor()
获取滚轮选择器幕布颜色
Get color of curtain
For example 0xFF123456
|
List |
getData()
获取数据列表
Get data source of WheelPicker
|
int |
getIndicatorColor()
获取滚轮选择器指示器颜色
Get color of indicator
For example 0xFF123456
|
int |
getIndicatorSize()
获取滚轮选择器指示器尺寸
Get size of indicator
Unit in px
|
int |
getItemAlign()
获取滚轮选择器数据项的对齐方式
Get alignment of WheelPicker
|
int |
getItemSpace()
获取滚轮选择器数据项之间间距
Get space between items
Unit in px
|
int |
getItemTextColor()
获取数据项文本颜色
Get text color of items
For example 0xFF123456
|
int |
getItemTextSize()
获取数据项文本尺寸大小
Get text size of items
Unit in px
|
String |
getMaximumWidthText()
获取最宽的文本
Get maximum width text
|
int |
getMaximumWidthTextPosition()
获取最宽的文本在数据源中的位置
Get the position of maximum width text in data source
|
int |
getSelectedItemPosition()
获取当前被选中的数据项所显示的数据在数据源中的位置
需要注意的是,当滚轮选择器滚动时并不会改变该方法的返回值,该方法会始终返回
setSelectedItemPosition(int)所设置的值,当且仅当调用
setSelectedItemPosition(int)设置新值后,该方法所返回的值才会改变
如果你只是想获取滚轮静止时当前被选中的数据项所显示的数据在数据源中的位置,你可以通过
WheelPicker.OnItemSelectedListener回调监听或调用
getCurrentItemPosition()
Get the position of current selected item in data source
Notice:The value by return will not change when WheelPicker scroll, this method will always
return the value which setSelectedItemPosition(int) set, the value this method
return will be changed if and only if call the
setSelectedItemPosition(int)
set a new value
If you only want to get the position of current selected item in data source, you can get it
through WheelPicker.OnItemSelectedListener or call
getCurrentItemPosition() directly |
int |
getSelectedItemTextColor()
获取当前选中的数据项文本颜色
Get text color of current selected item
For example 0xFF123456
|
android.graphics.Typeface |
getTypeface()
获取数据项文本字体对象
Get typeface of item text
|
int |
getVisibleItemCount()
获取滚轮选择器可见数据项的数量
Get the count of current visible items in WheelPicker
|
boolean |
hasAtmospheric()
滚轮选择器是否有空气感
Whether WheelPicker has atmospheric or not
|
boolean |
hasCurtain()
滚轮选择器是否显示幕布
Whether WheelPicker display curtain or not
|
boolean |
hasIndicator()
滚轮选择器是否有指示器
Whether WheelPicker display indicator or not
|
boolean |
hasSameWidth()
数据项是否有相同宽度
Whether items has same width or not
|
boolean |
isCurved()
滚轮选择器是否开启卷曲效果
Whether WheelPicker enable curved effect or not
|
boolean |
isCyclic()
滚轮选择器数据项是否为循环状态
Whether WheelPicker is cyclic or not
|
void |
setAtmospheric(boolean hasAtmospheric)
设置滚轮选择器是否有空气感
开启空气感的滚轮选择器将呈现中间不透明逐渐向两端透明过度的渐变效果
Set whether WheelPicker has atmospheric or not
WheelPicker's items will be transparent from center to ends if atmospheric display
|
void |
setCurtain(boolean hasCurtain)
设置滚轮选择器是否显示幕布
设置滚轮选择器显示幕布的话将会在当前选中的项上方绘制一个与当前数据项大小一致的矩形区域并填充指定颜色
Set whether WheelPicker display curtain or not
WheelPicker will draw a rectangle as big as current selected item and fill specify color
above content if curtain display
|
void |
setCurtainColor(int color)
设置滚轮选择器幕布颜色
Set color of curtain
For example 0xFF123456
|
void |
setCurved(boolean isCurved)
设置滚轮选择器是否开启卷曲效果
开启滚轮选择器的滚轮效果会呈现一种滚轮两端向屏幕内弯曲的效果
滚轮选择器的卷曲效果依赖于严格的几何模型,一些与尺寸相关的设置在该效果下可能会变得不再有效,例如在卷
曲效果下每一条数据项的尺寸大小因为透视关系看起来都不再一样,数据项之间的间隔也会因为卷曲的关系有微妙
的视觉差距
Set whether WheelPicker enable curved effect or not
If setCurved true, WheelPicker will display with curved effect looks like ends bend into
screen with perspective.
|
void |
setCyclic(boolean isCyclic)
设置滚轮选择器数据项是否为循环状态
开启数据循环会使滚轮选择器上下滚动不再有边界,会呈现数据首尾相接无限循环的效果
Set whether WheelPicker is cyclic or not
WheelPicker's items will be end to end and in an infinite loop if setCyclic true, and there
is no border whit scroll when WheelPicker in cyclic state
|
void |
setData(List data)
设置数据列表
数据源可以是任意类型,但是需要注意的是WheelPicker在绘制数据的时候会将数据转换成String类型
在没有设置数据源的情况下滚轮选择器会设置一个默认的数据源作为展示
Set data source of WheelPicker
The data source can be any type, WheelPicker will change the data to string when it draw the
item.
|
void |
setIndicator(boolean hasIndicator)
设置滚轮选择器是否显示指示器
如果设置滚轮选择器显示指示器,那么将会在滚轮选择器的当前选中数据项上下显示两根分割线
需要注意的是指示器的尺寸并不参与滚轮选择器的尺寸计算,其会绘制在滚轮选择器的上方
Set whether WheelPicker display indicator or not
WheelPicker will draw two lines above an below current selected item if display indicator
Notice:Indicator's size will not participate in WheelPicker's size calculation, it will drawn
above the content
|
void |
setIndicatorColor(int color)
设置滚轮选择器指示器颜色
Set color of indicator
For example 0xFF123456
|
void |
setIndicatorSize(int size)
设置滚轮选择器指示器尺寸
Set size of indicator
Unit in px
|
void |
setItemAlign(int align)
设置滚轮选择器数据项的对齐方式
默认对齐方式为居中对齐
WheelPicker.ALIGN_CENTER
Set alignment of WheelPicker
The default alignment of WheelPicker is WheelPicker.ALIGN_CENTER |
void |
setItemSpace(int space)
设置滚轮选择器数据项之间间距
Set space between items
Unit in px
|
void |
setItemTextColor(int color)
设置数据项文本颜色
Set text color of items
For example 0xFF123456
|
void |
setItemTextSize(int size)
设置数据项文本尺寸大小
Set text size of items
Unit in px
|
void |
setMaximumWidthText(String text)
设置最宽的文本
Set maximum width text
|
void |
setMaximumWidthTextPosition(int position)
设置最宽的文本在数据源中的位置
Set the position of maximum width text in data source
|
void |
setOnItemSelectedListener(WheelPicker.OnItemSelectedListener listener)
设置滚轮Item选中监听器
|
void |
setOnWheelChangeListener(WheelPicker.OnWheelChangeListener listener)
设置滚轮滚动状态改变监听器
|
void |
setSameWidth(boolean hasSameSize)
设置数据项是否有相同的宽度
滚轮选择器在确定尺寸大小时会通过遍历数据源来计算每一条数据文本的宽度以找到最宽的文本作为滚轮选择器的
最终宽度,当数据源的数据非常多时,这个过程可能会消耗大量的时间导致效率降低,而且在大部分数据量多情况
下,数据文本大都有相同的宽度,这种情况下调用该方法告诉滚轮选择器数据宽度相同则可以免去上述计算时间,
提升效率
有些时候,你所加载的数据源确实是每条数据文本的宽度都不同,但是你知道最宽的数据文本在数据源中的位置,
这时你可以调用
setMaximumWidthTextPosition(int)方法告诉滚轮选择器最宽的这条数据文本在数据
源的什么位置,滚轮选择器则会根据该位置找到该条数据文本并将其宽度作为滚轮选择器的宽度。 |
void |
setSelectedItemPosition(int position)
设置当前被选中的数据项所显示的数据在数据源中的位置
调用该方法会导致滚动选择器的位置被重新初始化,什么意思呢?
|
void |
setSelectedItemTextColor(int color)
设置当前选中的数据项文本颜色
Set text color of current selected item
For example 0xFF123456
|
void |
setTypeface(android.graphics.Typeface tf)
设置数据项文本字体对象
数据项文本字体的设置可能会导致滚轮大小的改变
Set typeface of item text
Set typeface of item text maybe cause WheelPicker size change
|
void |
setVisibleItemCount(int count)
设置滚轮选择器可见数据项数量
滚轮选择器的可见数据项数量必须为大于1的整数
这里需要注意的是,滚轮选择器会始终显示奇数个数据项,即便你为其设置偶数个数据项,最终也会被转换为奇数
默认情况下滚轮选择器可见数据项数量为7
Set the count of current visible items in WheelPicker
The count of current visible items in WheelPicker must greater than 1
Notice:count of current visible items in WheelPicker will always is an odd number, even you
can set an even number for it, it will be change to an odd number eventually
By default, the count of current visible items in WheelPicker is 7
|
int getVisibleItemCount()
Get the count of current visible items in WheelPicker
void setVisibleItemCount(int count)
Set the count of current visible items in WheelPicker The count of current visible items in WheelPicker must greater than 1 Notice:count of current visible items in WheelPicker will always is an odd number, even you can set an even number for it, it will be change to an odd number eventually By default, the count of current visible items in WheelPicker is 7
count - 滚轮选择器可见数据项数量boolean isCyclic()
Whether WheelPicker is cyclic or not
void setCyclic(boolean isCyclic)
Set whether WheelPicker is cyclic or not WheelPicker's items will be end to end and in an infinite loop if setCyclic true, and there is no border whit scroll when WheelPicker in cyclic state
isCyclic - 是否为循环状态void setOnItemSelectedListener(WheelPicker.OnItemSelectedListener listener)
listener - 滚轮Item选中监听器WheelPicker.OnItemSelectedListenerint getSelectedItemPosition()
setSelectedItemPosition(int)所设置的值,当且仅当调用
setSelectedItemPosition(int)设置新值后,该方法所返回的值才会改变
如果你只是想获取滚轮静止时当前被选中的数据项所显示的数据在数据源中的位置,你可以通过
WheelPicker.OnItemSelectedListener回调监听或调用
getCurrentItemPosition()
Get the position of current selected item in data source
Notice:The value by return will not change when WheelPicker scroll, this method will always
return the value which setSelectedItemPosition(int) set, the value this method
return will be changed if and only if call the
setSelectedItemPosition(int)
set a new value
If you only want to get the position of current selected item in data source, you can get it
through WheelPicker.OnItemSelectedListener or call
getCurrentItemPosition() directly
void setSelectedItemPosition(int position)
WheelPicker.OnWheelChangeListener和
WheelPicker.OnItemSelectedListener监听器中方法参数的值,因
此你总该在调用该方法后考虑到相关影响
你总该为该方法传入一个大于等于0小于数据源getData()长度
的值,否则会抛出异常
默认情况下,当前被选中的数据项所显示的数据在数据源中的位置为0
Set the position of current selected item in data source
Call this method and set a new value may be reinitialize the location of WheelPicker. For
example, you call this method after scroll the WheelPicker and set selected item position
with a new value, WheelPicker will clear the related parameters last scroll set and reset
series of data, and make the position 3 as a new starting point of WheelPicker, this behavior
maybe influenced some attribute you set last time, such as parameters of method in
WheelPicker.OnWheelChangeListener and
WheelPicker.OnItemSelectedListener, so you must always
consider the influence when you call this method set a new value
You should always set a value which greater than or equal to 0 and less than data source's
length
By default, position of current selected item in data source is 0
position - 当前被选中的数据项所显示的数据在数据源中的位置int getCurrentItemPosition()
getSelectedItemPosition()不同的是,该方法所返回的结果会因为滚轮选择器的改变而改变
Get the position of current selected item in data source
The difference between getSelectedItemPosition(), the value this method return will
change by WheelPicker scrolled
List getData()
Get data source of WheelPicker
void setData(List data)
Set data source of WheelPicker The data source can be any type, WheelPicker will change the data to string when it draw the item. There is a default data source when you not set the data source for WheelPicker.
data - 数据列表void setSameWidth(boolean hasSameSize)
setMaximumWidthTextPosition(int)方法告诉滚轮选择器最宽的这条数据文本在数据
源的什么位置,滚轮选择器则会根据该位置找到该条数据文本并将其宽度作为滚轮选择器的宽度。如果你不知道位
置,但是知道最宽的数据文本,那么你也可以直接通过调用setMaximumWidthText(String)告诉滚轮选
择器最宽的文本是什么,滚轮选择器会根据这条文本计算宽度并将其作为滚轮选择器的宽度
Set items of WheelPicker if has same width
WheelPicker will traverse the data source to calculate each data text width to find out the
maximum text width for the final view width, this process maybe spends a lot of time and
reduce efficiency when data source has large amount data, in most large amount data case,
data text always has same width, you can call this method tell to WheelPicker your data
source has same width to save time and improve efficiency.
Sometimes the data source you set is positively has different text width, but maybe you know
the maximum width text's position in data source, then you can call
setMaximumWidthTextPosition(int) tell to WheelPicker where is the maximum width text
in data source, WheelPicker will calculate its width base on this text which found by
position. If you don't know the position of maximum width text in data source, but you have
maximum width text, you can call setMaximumWidthText(String) tell to WheelPicker
what maximum width text is directly, WheelPicker will calculate its width base on this text.
hasSameSize - 是否有相同的宽度boolean hasSameWidth()
Whether items has same width or not
void setOnWheelChangeListener(WheelPicker.OnWheelChangeListener listener)
listener - 滚轮滚动状态改变监听器WheelPicker.OnWheelChangeListenerString getMaximumWidthText()
Get maximum width text
void setMaximumWidthText(String text)
Set maximum width text
text - 最宽的文本setSameWidth(boolean)int getMaximumWidthTextPosition()
Get the position of maximum width text in data source
void setMaximumWidthTextPosition(int position)
Set the position of maximum width text in data source
position - 最宽的文本在数据源中的位置setSameWidth(boolean)int getSelectedItemTextColor()
Get text color of current selected item For example 0xFF123456
void setSelectedItemTextColor(int color)
Set text color of current selected item For example 0xFF123456
color - 当前选中的数据项文本颜色,16位颜色值int getItemTextColor()
Get text color of items For example 0xFF123456
void setItemTextColor(int color)
Set text color of items For example 0xFF123456
color - 数据项文本颜色,16位颜色值int getItemTextSize()
Get text size of items Unit in px
void setItemTextSize(int size)
Set text size of items Unit in px
size - 设置数据项文本尺寸大小,单位:pxint getItemSpace()
Get space between items Unit in px
void setItemSpace(int space)
Set space between items Unit in px
space - 滚轮选择器数据项之间间距,单位:pxvoid setIndicator(boolean hasIndicator)
Set whether WheelPicker display indicator or not WheelPicker will draw two lines above an below current selected item if display indicator Notice:Indicator's size will not participate in WheelPicker's size calculation, it will drawn above the content
hasIndicator - 是否有指示器boolean hasIndicator()
Whether WheelPicker display indicator or not
int getIndicatorSize()
Get size of indicator Unit in px
void setIndicatorSize(int size)
Set size of indicator Unit in px
size - 滚轮选择器指示器尺寸,单位:pxint getIndicatorColor()
Get color of indicator For example 0xFF123456
void setIndicatorColor(int color)
Set color of indicator For example 0xFF123456
color - 滚轮选择器指示器颜色,16位颜色值void setCurtain(boolean hasCurtain)
Set whether WheelPicker display curtain or not WheelPicker will draw a rectangle as big as current selected item and fill specify color above content if curtain display
hasCurtain - 滚轮选择器是否显示幕布boolean hasCurtain()
Whether WheelPicker display curtain or not
int getCurtainColor()
Get color of curtain For example 0xFF123456
void setCurtainColor(int color)
Set color of curtain For example 0xFF123456
color - 滚轮选择器幕布颜色,16位颜色值void setAtmospheric(boolean hasAtmospheric)
Set whether WheelPicker has atmospheric or not WheelPicker's items will be transparent from center to ends if atmospheric display
hasAtmospheric - 滚轮选择器是否有空气感boolean hasAtmospheric()
Whether WheelPicker has atmospheric or not
boolean isCurved()
Whether WheelPicker enable curved effect or not
void setCurved(boolean isCurved)
Set whether WheelPicker enable curved effect or not If setCurved true, WheelPicker will display with curved effect looks like ends bend into screen with perspective. WheelPicker's curved effect base on strict geometric model, some parameters relate with size maybe invalidated, for example each item size looks like different because of perspective in curved, the space between items looks like have a little difference
isCurved - 滚轮选择器是否开启卷曲效果int getItemAlign()
Get alignment of WheelPicker
void setItemAlign(int align)
WheelPicker.ALIGN_CENTER
Set alignment of WheelPicker
The default alignment of WheelPicker is WheelPicker.ALIGN_CENTER
align - 对齐方式标识值
该值仅能是下列值之一:
WheelPicker.ALIGN_CENTER
WheelPicker.ALIGN_LEFT
WheelPicker.ALIGN_RIGHTandroid.graphics.Typeface getTypeface()
Get typeface of item text
void setTypeface(android.graphics.Typeface tf)
Set typeface of item text Set typeface of item text maybe cause WheelPicker size change
tf - 字体对象