zoukankan      html  css  js  c++  java
  • android学习---progressbar和ratingbar

    progressbar进度条

    效果                     

     

    main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="小圆形进度条" />
    
        <ProgressBar
            style="?android:attr/progressBarStyleSmallTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
        </ProgressBar>
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="中型圆形进度条" />
    
        <ProgressBar
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
        </ProgressBar>
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="大型圆形进度条" />
    
        <ProgressBar
            style="?android:attr/progressBarStyleLarge"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
        </ProgressBar>
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="水平进度条" />
    
        <ProgressBar
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:max="100"
            android:progress="30" >
        </ProgressBar>
    
        <ProgressBar
            android:id="@+id/progressbar"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:max="100"
            android:progress="30"
            android:secondaryProgress="60" >
        </ProgressBar>
    
        <LinearLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal" >
    
            <Button
                android:id="@+id/button1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="20dp"
                android:text="增加进度" >
            </Button>
    
            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="20dp"
                android:text="减小进度" >
            </Button>
        </LinearLayout>
    
    </LinearLayout>

    Main.java

    package com.leaf.android;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.Window;
    import android.widget.Button;
    import android.widget.ProgressBar;
    
    public class Main extends Activity implements OnClickListener {
        /** Called when the activity is first created. */
    
        private ProgressBar progressBar;
        private Button button1, button2;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    
            // 如何设置窗口有刻度的效果
            requestWindowFeature(Window.FEATURE_PROGRESS);
            requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
            setContentView(R.layout.main);
            progressBar = (ProgressBar) this.findViewById(R.id.progressbar);
            setProgressBarVisibility(true);
            setProgressBarIndeterminate(true);
            setProgress(3500);
            button1 = (Button) this.findViewById(R.id.button1);
            button2 = (Button) this.findViewById(R.id.button2);
            button1.setOnClickListener(this);
            button2.setOnClickListener(this);
        }
    
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.button1:
                progressBar.setProgress((int) (progressBar.getProgress() * 1.2));
                progressBar.setSecondaryProgress((int) (progressBar
                        .getSecondaryProgress() * 1.2));
                break;
            case R.id.button2:
                progressBar.setProgress((int) (progressBar.getProgress() * 0.8));
                progressBar.setSecondaryProgress((int) (progressBar
                        .getSecondaryProgress() * 0.8));
                break;
            }
        }
    }

    ratingbar评分控件

    效果:

    main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="评分控件的使用"
            android:textSize="20dp" />
    
        <RatingBar
            android:id="@+id/ratingBar"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    
    </LinearLayout>

    Main.java

    package com.leaf.android;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.RatingBar;
    import android.widget.RatingBar.OnRatingBarChangeListener;
    import android.widget.Toast;
    
    public class Main extends Activity implements OnRatingBarChangeListener {
        /** Called when the activity is first created. */
    
        private RatingBar ratingBar;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            ratingBar = (RatingBar) this.findViewById(R.id.ratingBar);
            ratingBar.setMax(100);// 设置最大刻度
            ratingBar.setProgress(20);// 设置当前的刻度
            ratingBar.setOnRatingBarChangeListener(this);
    
        }
    
        public void onRatingChanged(RatingBar ratingBar, float rating,
                boolean fromUser) {
            // TODO Auto-generated method stub
            int progress = ratingBar.getProgress();
            Toast.makeText(Main.this, "progress:" + progress + "rating:" + rating,
                    1).show();
        }
    }
  • 相关阅读:
    何必言精通——十年杂感 兼谈其它 总结
    寻找自己的道路——与技术同胞共勉 一种划分为七个阶段的道路:自信=>意志=>布局=>切入点=>团队=>渠道=>产品
    务虚:大局观、方法与关键点 个人经历例子说明 一种工作应对解决的方法
    程序员“宅钱”的几种方式和我的体会 程序员其他赚钱的路径:私单、站长、开发共享软件
    怎么看待移动互联网时代 关于移动互联网时代的一点个人看法总结 在强烈的产业变化时期,主流观点是不靠谱的 什么是浪潮呢? 小型化、无线化、智能化。
    为什么现在很多年轻人愿意来北上广深打拼,即使过得异常艰苦,远离亲人,仍然义无反顾? 谈谈程序员返回家乡的创业问题 利基市场就是那些不大不小的缝隙中的市场 马斯洛的需求无层次不适合中国。国人的需求分三个层次——生存、稳定、装逼。对应的,国内的产品也分三个层次——便宜、好用、装B。人们愿意为这些掏钱
    SSM项目的数据库密码加密方案
    Python两个变量的值进行交换的方法
    Python编码问题
    Python2.7.14新手学习
  • 原文地址:https://www.cnblogs.com/lea-fu/p/3295344.html
Copyright © 2011-2022 走看看