Android高级界面组件之拖动条和评星条的功能实现
一 拖动条
安卓手机音量设置都是给出一个拖动条,使得用户能够拖动滑块进行设置,这里我们介绍拖动条。
安卓拖动条控件是继承自ProgressBar控件,所以它能够支持ProgressBar的xml属性。但是他有自己的独特属性:
android:max 设置最大的拖动两
android:progress 设置初始化进度
android:thumb 设置滑块图形
事件监听方面,拖动条需要注意:我们不在监听用户的点击操作,而是监听滑块的改变,下面用一个实例简单的操作一下拖动条。
实例:界面上给出一个拖动条和文本,滑动滑块文本动态显示
1.新建工程,在布局文件中加入一个文本和拖动条。这里我设置了当前进度值和滑块图形
<RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="112dp" android:text="当前进度:0" /> <SeekBar android:id="@+id/seekBar1" android:thumb="@drawable/penguin" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" /> </RelativeLayout>
2.代码中获取文本和拖动条,给拖动条加监听器。监听器内部控制了文本的动态显示。监听有三个方法,注意:改写一下开始和结束滑动的方法,另外一个和是否是用户滑动有关,我们且不去管它
tv = (TextView)findViewById(R.id.textView1); sb = (SeekBar)findViewById(R.id.seekBar1); sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar s) { final int p = s.getProgress(); tv.setText("当前进度:" + p); }//结束滑动 @Override public void onStartTrackingTouch(SeekBar s) { tv.setText("正在拖动!"); }//开始滑动 @Override public void onProgressChanged(SeekBar s, int arg1, boolean arg2) { } });
运行代码,滑动滑块,能够看到文本根据滑动动态的显示内容。
二 评星条
很多视屏软件和是应用市场软件都有评星的功能,这是的评分应用场景是:拖动评星条,之后点击某个提交按钮完成评分。这里我们简单看一下评星条的属性,之后模拟一个类似的评星功能。
android:isIndicator 表明是指示器,也就是能不能被用户评分,值为"true"不能被改变
android:numStars 评星条的星星总数
android:rating 评星条的默认星级
android:stepSize 评星一次变化的分量,默认状态下为0.5,用户一次拖动改变0.5的星级
实例:做一个简单的评分界面
1.新建工程,布局中加入显示文本,评星条,提交按钮
<RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <RatingBar android:id="@+id/ratingBar1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="184dp" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/ratingBar1" android:layout_centerHorizontal="true" android:layout_marginBottom="100dp" android:text="评分:" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/ratingBar1" android:layout_centerHorizontal="true" android:text="提交" /> </RelativeLayout>
2.在主Activity里面实例化显示文本,评星条,按钮
tv = (TextView)findViewById(R.id.textView1); asb = (RatingBar)findViewById(R.id.ratingBar1); b = (Button)findViewById(R.id.button1);
3.给按钮加监听事件,获取评星条的评分,显示到文本中去。评星的获取通过getRating()方法
b.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { final float r; r = asb.getRating(); tv.setText("评分"+ r +"星"); } });
运行代码,效果如下:
以上所述是小编给大家介绍的Android高级界面组件之拖动条和评星条的功能实现,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
- Android基于widget组件实现物体移动/控件拖动功能示例
- Android高级控件(三)—— 使用Google ZXing实现二维码的扫描和生成相关功能体系
- Android登录界面用SharedPreferences实现记住密码功能
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- android中实现swipe的手势功能及页面拖动动画
- android中Zxing实现二维码功能的快速集成以及扫描界面的定制
- 如何使用友盟 Cocos2d-x 分享组件实现 Android/iOS 分享功能
- Android实现带有记住密码功能的登陆界面
- Android高级控件(一)——ListView绑定CheckBox实现全选,增加和删除等功能
- android三档自定义滑动开关,禁止点击功能的实现,用默认的seekbar组件实现
- Android实现界面组件的抖动效果
- Android高级控件(三)—— 使用Google ZXing实现二维码的扫描和生成相关功能体系
- android应用里面在某个界面禁止系统截屏功能的实现
- Android基本界面组件1-----文本框与编辑框的功能和用法
- android开发-图片缩放,拖动功能实现。
- Android实训案例(七)——四大组件之一Service初步了解,实现通话录音功能,抽调接口
- Android登录界面用SharedPreferences实现记住密码功能
- Android实现登录界面和功能实例
- Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
- Android高级界面组件的学习(三)