双SeekBar联动布局
2015-05-05 23:02
447 查看
DoubleSeekBar
朋友要做一个效果,二个SeekBar联动,实现之后觉得挺简单的。实现方法
上面的SeekBar:只有滑块,进度背景透明下面的SeekBar:没有滑块,进度背景正常
每当任何一个SeekBar有状态变化,都带动另一个变化
效果图
运行截图布局文件
layout_double_seekbar.xml<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" xmlns:tools="http://schemas.android.com/tools"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <SeekBar android:id="@+id/seekBarTop" style="@style/NumberProgressBar_Default" android:layout_width="match_parent" android:layout_height="wrap_content" android:focusable="false" android:max="200" android:progressDrawable="@drawable/doubleseekbar_bg_transparent" android:thumb="@drawable/doubleseekbar_thumb_bar" /> <SeekBar android:id="@+id/seekBarBottom" style="@style/NumberProgressBar_Default" android:layout_width="match_parent" android:layout_height="wrap_content" android:focusable="false" android:max="200" android:progressDrawable="@drawable/doubleseekbar_bg_drawable" android:thumb="@drawable/doubleseekbar_thumb_transparent" /> </LinearLayout> </LinearLayout>
自定义DoubleSeekBar类
/** * * @class DoubleSeekbar * * @description 二个SeekBar联动布局,样式和参数未定义 * * @author tq * * @date 2015-05-04 23:10:15 * */ public class DoubleSeekbar extends LinearLayout { public DoubleSeekbar(Context context) { // TODO Auto-generated constructor stub super(context, null); } public DoubleSeekbar(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub // 注意这里的第二个参数和第三个参数分是ViewGroup、是否与ViewGroup绑定的布尔变量 LayoutInflater.from(context).inflate(R.layout.layout_double_seekbar, this, true); initView(); } /** * 初始化布局 */ private void initView() { // TODO Auto-generated method stub final SeekBar seekBarTop = (SeekBar) findViewById(R.id.seekBarTop); final SeekBar seekBarBottom = (SeekBar) findViewById(R.id.seekBarBottom); // 设置底部的SeekBar随着顶部的SeekBar滑动 seekBarTop.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } @Override public void onStartTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // TODO Auto-generated method stub seekBarBottom.setProgress(progress); } }); // 设置顶部的SeekBar随着底部的SeekBar滑动(已验证,不会出现相互无限调用的情况) // 或者直接设置底部的SeekBar不可滑动 // seekBarBottom.setEnabled(false); seekBarBottom.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { 8ef0 @Override public void onStopTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } @Override public void onStartTrackingTouch(SeekBar seekBar) { // TODO Auto-generated method stub } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // TODO Auto-generated method stub seekBarTop.setProgress(progress); } }); } }
最后的话
以前自定义布局写的也比较少,希望以后好好加强这方面。下载地址
点我下载相关文章推荐
- Android Design Library(二)使用CoordinatorLayout布局实现联动效果
- 垂直的SeekBar以及自定义布局
- 苦苦搜寻也没有找到Android的EditText与SeekBar联动例子,吐血分享哈!
- SeekBar与TextView简单联动
- Fragment与Radiogroup联动,经典的主界面布局。使用show和hide的方式实现;
- android省市区三级联动案例:(三)布局文件
- ArcEngine 地图与布局的联动
- 简单viewpager布局加fragment联动 可以实现效果
- TabLayout 和ViewPager和Fragment的多页面滑动(主要实现一个水平的布局用来展示Tabs加上ViewPager实现联动效果)
- RecyclerView的基本用法二--滚动时RecyclerView之外的布局联动
- Android学习之通过SeekBar调节布局背景颜色(RGB)
- MoveLayout 移动布局,实现控件联动
- AlertDialog弹窗引用自定义layout布局动态显示seekbar进度
- iOS-两个scrollView联动(上下两个scrollView布局的情况)
- 简易自定义seg与tableview联动布局
- 第62天(就业班) 省份_城市_区域三联动、什么是easyUI、layout布局、accordion分类、LinkButton、tab选项卡、pagination分页栏
- Android动画——布局联动
- Moss2007中通过Sharepoint Designer 创建多个列表联动的工作流
- ADF FACES 布局
- 解决旋转时statusbar隐藏、显示对View布局的影响