Android之ProgressBar及其子类SeekBar和RatingBar的使用(二)
2016-06-30 12:12
513 查看
效果如图所示:
这里简单的写了一个progressBar,seekBar,RatingBar的代码。
布局activity_main:
MainActivity:
没什么技术含量,写下来供以后自己方便查找。。。
代码在这里:
代码链接
这里简单的写了一个progressBar,seekBar,RatingBar的代码。
布局activity_main:
<!-- <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ProgressBar android:layout_width="match_parent" android:layout_height="wrap_content" style="@android:style/Widget.ProgressBar.Horizontal" android:max="50" android:progress="10" android:secondaryProgress="20" android:progressDrawable="@drawable/progress_bar" android:id="@+id/bar"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="增加" android:onClick="myadd"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="减少" android:onClick="myMinute"/> <!-- <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/msg" android:src="@drawable/bg"/> --> <SeekBar android:id="@+id/sb" style="@android:style/Widget.SeekBar" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:progress="10" android:progressDrawable="@drawable/progress_bar" android:thumb="@drawable/ic_launcher" /> <RatingBar android:layout_width="wrap_content" android:layout_height="wrap_content" android:numStars="3" android:stepSize="1" android:rating="1" android:id="@+id/ra"/> </LinearLayout> <!-- </ScrollView> -->
MainActivity:
package com.syy.progressbarapp; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.os.Bundle; import android.view.View; import android.view.Window; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.RatingBar; import android.widget.RatingBar.OnRatingBarChangeListener; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.Toast; public class MainActivity extends Activity { private ImageView msg; private ProgressBar bar; private SeekBar sb; private int cp; private RatingBar ra; public void myadd(View view){ //bar.incrementProgressBy(10); //bar.setProgress(bar.getMax()); cp+=10; if(cp>bar.getMax()){ cp=0; } bar.setProgress(cp); } public void myMinute(View view){ //bar.incrementProgressBy(-10); //bar.setProgress(bar.getMax()); cp-=10; if(cp<0){ cp=0; } bar.setProgress(cp); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.activity_main); setProgressBarIndeterminateVisibility(true); bar=(ProgressBar)findViewById(R.id.bar); //msg=(ImageView)findViewById(R.id.msg); sb=(SeekBar)findViewById(R.id.sb); sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { //结束拖动的时候触发该方法 @Override public void onStopTrackingTouch(SeekBar bar) { // TODO Auto-generated method stub } //开始拖动的时候触动该方法 @Override public void onStartTrackingTouch(SeekBar bar) { // TODO Auto-generated method stub } //只能进度值发生改变触发该方法 //第二个参数:事件源的当前进度值 //第三个参数:数据的改变是否来自于用户的 @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromuser) { // TODO Auto-generated method stub //msg.setAlpha(progress); if(fromuser) bar.setProgress(progress); } }); ra=(RatingBar)findViewById(R.id.ra); ra.setOnRatingBarChangeListener(new OnRatingBarChangeListener() { //第一个参数是事件源 //第二个是分数 @Override public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromuser) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, "分数为:"+rating, 0).show(); } }); } //按下回退按钮时触发该方法 @Override public void onBackPressed() { // TODO Auto-generated method stub //弹出对话框 //第一步:创建AlertDialog.Builder对象 AlertDialog.Builder bulder=new AlertDialog.Builder(this); //第二步:设置图标区 bulder.setIcon(R.drawable.ic_launcher); //第三步:设置标题区 bulder.setTitle("提示"); //第四步:设置内容 bulder.setMessage("是否推出程序"); //第五步:设置按钮区 bulder.setPositiveButton("确实", new OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub //推出应用程序 System.exit(0); } }); bulder.setNegativeButton("取消", null); //设置不可被取消 bulder.setCancelable(false); //第六步:创建对话框对象 AlertDialog dialog=bulder.create(); dialog.show(); } }
没什么技术含量,写下来供以后自己方便查找。。。
代码在这里:
代码链接
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories