android常用控件(二)

ToggleButton(点击开关)
Switch(滑动开关)
SeekBar(进度条)
RatingBar(评分控件)

用这4个控件来做一个简单运用
效果图是这样的
这里写图片描述

xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">


    <LinearLayout
        android:layout_width="410dp"
        android:layout_height="500dp">
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/iv_work_image"
            />

    </LinearLayout>
    <SeekBar
        android:id="@+id/sb_work_seek"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center" />
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >


    <ToggleButton
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:id="@+id/tb_work_open1"
        android:onClick="open1" />
    <Switch
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_gravity="center"
        android:id="@+id/tb_work_open2"
        android:onClick="open2"
        android:checked="true"/>


        <RatingBar
            android:id="@+id/rb_work_ratingBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center" />
    </LinearLayout>
</LinearLayout>

java代码

package com.example.a_02.a_06;

import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Environment;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ImageView;
import android.widget.RatingBar;
import android.widget.SeekBar;
import android.widget.Switch;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.ToggleButton;

import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

/**
 * Created by ming on 2017/6/11 0011.
 */

public class work extends AppCompatActivity {

    private File[] files;
    private ImageView iv_work_image;
    private Bitmap bitmap;
    private int qq=1;
    private ToggleButton tb_work_open1;
    private Switch tb_work_open2;
    private SeekBar sb_work_seek;
    private RatingBar rb_work_ratingBar;
    private RatingBar rb;
    private Map<Number,Float> count = new HashMap<Number, Float>();

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.work);
        iv_work_image = (ImageView) findViewById(R.id.iv_work_image);
        tb_work_open1 = (ToggleButton) findViewById(R.id.tb_work_open1);
        tb_work_open2 = (Switch) findViewById(R.id.tb_work_open2);
        sb_work_seek = (SeekBar) findViewById(R.id.sb_work_seek);
        rb_work_ratingBar = (RatingBar) findViewById(R.id.rb_work_ratingBar);
                                                                    //内存卡激活
        if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
            //获取内存卡路劲
            String ss=Environment.getExternalStorageDirectory().getAbsolutePath();//获取内存卡绝对路径
            File file=new File(ss+"/images");//获取文件夹路径
            files=file.listFiles(); //获取文件夹下所有的文件
//            使用bitmap位图
            bitmap = BitmapFactory.decodeFile(files[qq].getAbsolutePath());
            iv_work_image.setImageBitmap(bitmap);

            //SeekBar监听
            sb_work_seek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
                @Override
                public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                    seekBar.setMax(255);
                    iv_work_image.setImageAlpha(progress);
                    //Toast.makeText(work.this, progress+"", Toast.LENGTH_SHORT).show();
                }
                @Override
                public void onStartTrackingTouch(SeekBar seekBar) {
                    //Toast.makeText(work.this, "触摸", Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onStopTrackingTouch(SeekBar seekBar) {
                    //Toast.makeText(work.this, "放开", Toast.LENGTH_SHORT).show();
                }
            });
            //RatingBar监听
            rb_work_ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {

                @Override
                public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
                    count.put(qq,rating);
                    Toast.makeText(work.this, count.size()+"kkkkk", Toast.LENGTH_SHORT).show();
                }
            });
        }
    }




    public void open1(View view) {
        if (tb_work_open1.isChecked() == false) {
            qq=qq+1;
            if(qq>=files.length){
                qq=1;
            }

            bitmap = BitmapFactory.decodeFile(files[qq].getAbsolutePath());
            iv_work_image.setImageBitmap(bitmap);

        } else {
            qq=qq+1;
            if(qq>=files.length){
                qq=1;
            }
//            Toast.makeText(work.this, qq+"777", Toast.LENGTH_SHORT).show();
            bitmap = BitmapFactory.decodeFile(files[qq].getAbsolutePath());
            iv_work_image.setImageBitmap(bitmap);
        }
        if(count.get(qq)==null){
        String ss="3";
        count.put(qq, Float.parseFloat(ss));
    }
        rb_work_ratingBar.setRating(count.get(qq));

    }
    public void open2(View view){
        if(tb_work_open2.isChecked()==true){
            bitmap = BitmapFactory.decodeFile(files[qq].getAbsolutePath());
            iv_work_image.setImageBitmap(bitmap);
            //Toast.makeText(this,"打开" , Toast.LENGTH_SHORT).show();
        }else{
            bitmap=null;
            iv_work_image.setImageBitmap(bitmap);
           // Toast.makeText(this,"关闭" , Toast.LENGTH_SHORT).show();
        }
    }

}

左边开关换图,右边是关闭看图
星星则是评分
上面的进度条则可以调图片透明度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AprilCos

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值