SeekBar进度条背景图片和按钮图标的动态切换
来源:互联网 发布:电脑软件升级 编辑:程序博客网 时间:2024/06/05 16:15
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
package com.android.camera.manager;
import android.view.View;import com.android.camera.Log;import com.android.camera.R;
import android.graphics.Color;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.drawable.Drawable;import android.view.View;
import com.android.camera.Log;import com.android.camera.ui.RotateModeItemView;
import android.widget.SeekBar;import android.widget.SeekBar.OnSeekBarChangeListener;import android.graphics.Rect;
import com.android.camera.Util;import android.content.Context;
public class ProferssionManager extends ViewManager implements View.OnClickListener{
private SeekBar mProfessionSeekBar; private static Rect mBounds; private static final int[] PROFESSION_SEEKBAR_PROGRESS = new int[PROFESSION_NUM_COUNTS]; static { PROFESSION_SEEKBAR_PROGRESS[0] = R.drawable.eq_seekbar_press1; PROFESSION_SEEKBAR_PROGRESS[1] = R.drawable.eq_seekbar_press2; PROFESSION_SEEKBAR_PROGRESS[2] = R.drawable.eq_seekbar_press3; PROFESSION_SEEKBAR_PROGRESS[3] = R.drawable.eq_seekbar_press4; };
private static final int[] PROFESSION_SEEKBAR_THUMB = new int[PROFESSION_NUM_COUNTS]; static { PROFESSION_SEEKBAR_THUMB[0] = R.drawable.eq_thumb1; PROFESSION_SEEKBAR_THUMB[1] = R.drawable.eq_thumb2; PROFESSION_SEEKBAR_THUMB[2] = R.drawable.eq_thumb3; PROFESSION_SEEKBAR_THUMB[3] = R.drawable.eq_thumb4; };
public ProferssionManager(CameraActivity context) { super(context, VIEW_LAYER_OVERLAY); }
@Override protected View getView() { View v = getContext().inflate(R.layout.proferssion_background, getViewLayer()); mProfessionSeekBar.setThumb(getContext().getResources().getDrawable(R.drawable.eq_thumb_default)); mProfessionSeekBar.setProgressDrawable(getContext().getResources().getDrawable(R.drawable.eq_seekbar_default)); //一定要获取到原进度条的BoundsmBounds = mProfessionSeekBar.getProgressDrawable().getBounds(); return v; }
@Override public void onClick(View view) { for (int i = 0; i < PROFESSION_NUM_COUNTS; i++) { //mProfessionViews[i]可以忽视,这只是一个判断条件 if (mProfessionViews[i] == view) {switchSeekBar(i); } } } public void switchSeekBar(int i) {Drawable progressDrawable = getContext().getResources().getDrawable(PROFESSION_SEEKBAR_PROGRESS[i]);mProfessionSeekBar.setProgressDrawable(progressDrawable);//如果没有下面这一步,新切换的进度条背景图会拉伸填满整个进度条的布局mProfessionSeekBar.getProgressDrawable().setBounds(mBounds);
Drawable thumbDrawable= getContext().getResources().getDrawable(PROFESSION_SEEKBAR_THUMB[i]);mProfessionSeekBar.setThumb(thumbDrawable); }
private void applyListener() { if (mProfessionSeekBar!= null) { mProfessionSeekBar.setOnSeekBarChangeListener(mSeekBarLisenter1); } }
private OnSeekBarChangeListener mSeekBarLisenter = new OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { //切换进度条背景和按钮后,监听会执行一次progress = 0 的操作,不知道为什么会如此, //但是这样会给编程中的一些操作造成困扰 }
@Overridepublic void onStartTrackingTouch(SeekBar seekBar) {}
@Overridepublic void onStopTrackingTouch(SeekBar seekBar) {} };}
0 0
- SeekBar进度条背景图片和按钮图标的动态切换
- SeeKBar 背景图片偏移的问题
- Progressbar进度条和SeekBar拖动条的简单使用
- 手动滑动的进度条 SeekBar
- Android-SeekBar进度条的使用
- 进度条SeekBar
- 进度条seekbar
- 进度条SeekBar
- seekbar(进度条)
- 使用SeekBar制作可拖动的进度条
- 使用SeekBar制作可拖动的进度条
- 设置seekbar进度条 进度前后的
- 滑块在进度条上面的SeekBar
- Android 动态改变SeekBar进度条颜色与滑块颜色
- android------(自动调节的进度条+评级测试)SeekBar和RatingBar
- Android中的两种进度条SeekBar和ProgressBar的简单理解
- SeekBar的使用和竖向的SeekBar
- 两端都是圆角的进度条和动态进度条
- linux 日志切割工具cronolog
- Hexo NexT 主题SEO优化指南
- java的Calendar(日历)类 (转)
- A water problem
- Creo二次开发:查找和替换指定文件夹下所有工程图中的符号
- SeekBar进度条背景图片和按钮图标的动态切换
- C++ tm 和 time_t 有关总结
- 100多个基础常用JS函数和语法集合大全
- Git的简单学习
- 带权并查集--删除--UVA11987
- SVN之红色感叹号处理方法
- java进程
- 写在Android面试回来后【可能最全的Android面试总结】
- 函数指针及其的运用(上)——何为函数指针