如何使用android旋转轮获取所选文本?

时间:2015-04-27 03:15:33

标签: java android spinner android-wheel

我正在使用Android Spinner Wheel,我已经为此设置了代码。

AbstractWheel wheelHorizontalView1 = (AbstractWheel) findViewById(R.id.wheelHorizontalView1);
NumericWheelAdapter minAdapter = new NumericWheelAdapter(this, 1, 15,"%01d");
minAdapter.setItemResource(R.layout.wheel_text_centered_dark_back);
minAdapter.setItemTextResource(R.id.text);
wheelHorizontalView1.setViewAdapter(minAdapter);

以下是它的样子:

spinner wheel image

所以,我的问题是如何将3作为我选择的文本?

如果需要,这是xml,

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"
    android:layout_marginTop="20dp">

    <View
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="65dp"
        android:background="#007704" />

    <com.spinnerwheel.WheelHorizontalView
        android:id="@+id/wheelHorizontalView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="60dp"
        app:selectionDivider="@android:color/white"
        app:selectionDividerWidth="2dp"
        app:visibleItems="6" />
</RelativeLayout>

2 个答案:

答案 0 :(得分:2)

您应该致电setCurrentItem(int index)函数:

wheelHorizontalView1.setCurrentItem(2);

如果您想知道用户何时更改了该值 你必须实现这个监听器。

    wheelHorizontalView1.addChangingListener(changedListener);
    ...
    ...  
    // Wheel changed listener
    private OnWheelChangedListener changedListener = new OnWheelChangedListener() {
        public void onChanged(AbstractWheel wheel, int oldValue, int newValue) {
            // newValue is the currently selected item
        }
    };

答案 1 :(得分:1)

这是我在demo中找到的以获得价值的东西。

value=getWheel(viewId).getCurrentItem();

方法

   private AbstractWheel getWheel(int id) {
        return (AbstractWheel) findViewById(id);
    }

value=wheelHorizontalView1.getCurrentItem();