我想用我们都知道的模拟 FM 收音机的控件替换普通的 EditText 控件 (inputType="numberDecimal") 来输入一些十进制数字:
基本上你有一个整数序列,这个序列的一部分是可视化的。您指定一个 minValue 和 maxValue,currentValue 以某种方式突出显示。向左滑动应该增加显示的数字,向右滑动应该减少它们。
任何人都知道类似的东西是否已经在 android 中实现或有任何提示来实现这个?
我看到的最相似的项目是Android Wheel
使用权限具有震动效果
<uses-permission android:name="android.permission.VIBRATE" />
要在当前布局中包含轮子小部件,您应该在布局 xml 中添加以下行:
<it.sephiroth.android.wheel.view.Wheel
android:id="@+id/wheel"
xmlns:sephiroth="http://schemas.android.com/apk/res/it.sephiroth.android.wheel"
android:layout_width="match_parent"
android:layout_height="match_parent"
sephiroth:numRotations="6"
sephiroth:ticks="28" />
其中 numRotations 是轮子可以执行的最大旋转次数, ticks 是轮子将显示的总刻度数。
然后在您的活动中,您可以通过以下方式将 OnScrollListener 侦听器添加到车轮小部件:
mWheel = (Wheel) findViewById( R.id.wheel );
mWheel.setOnScrollListener( new OnScrollListener() {
@Override
public void onScrollStarted( Wheel view, float value, int roundValue ) {
}
@Override
public void onScrollFinished( Wheel view, float value, int roundValue ) {
}
@Override
public void onScroll( Wheel view, float value, int roundValue ) {
}
} );
另一个可能有用的是DateSlider
我认为没有内置功能。
我在网上找到了类似的东西 - http://mobile.tutsplus.com/tutorials/android/android-sdk-creating-a-rotating-dialer/
为了让它像你想要的那样,你必须把它放在 a 中framelayout
,并在中间放一个 textview 来显示数字。
框架布局 - http://developer.android.com/reference/android/widget/FrameLayout.html
我没有深入阅读该教程,但我想通过将图像更改为水平刻度盘,并通过更改onTouchListener
您将能够获得您想要的内容。
如果您对此问题有任何疑问,我会尽力提供帮助
查看 Wheel Widget:http ://code.google.com/p/android-wheel/
它可能会做你想做的事。