Android高级界面组件之拖动条和评星条的功能实现

Android高级界面组件之拖动条和评星条的功能实现,第1张

概述一     拖动条       安卓手机音量设置都是给出一个拖动条,使得用户能够拖动滑块进行设置,这里我们介绍拖动条。

一      拖动条

        安卓手机音量设置都是给出一个拖动条,使得用户能够拖动滑块进行设置,这里我们介绍拖动条。

安卓拖动条控件是继承自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高级界面组件之拖动条和评星条的功能实现全部内容,希望文章能够帮你解决Android高级界面组件之拖动条和评星条的功能实现所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1146828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存