竖着的Seekbar

Android实现自定义的垂直SeekBar 然而,默认的SeekBar只支持水平方向的滑动,如果我们需要实现一个垂直方向的SeekBar,就需要进行一些自定义。在这个示例中,我们将垂直SeekBar放置在一个垂直方向的LinearLayout中,并设置了一些基本属性,如ID、宽度、高度和最大值。首先,我们需要创建一个自定义的垂直SeekBar类,继承自SeekBar。方法:用于绘制SeekBar,在绘制之前对画布进行旋转和平移操作,使SeekBar在垂直方向上正确显示。方法:用于测量SeekBar的尺寸,将宽度和高度进行交换,以实现垂直方向的滑动。 阅读详情

竖着的Seekbar

视频播放器页面音量控制Seekbar实现竖直的效果。竖直只是将Seekbar转了90度或-90度,我们可以把画布转一个角度,然后交给系统去画,
具体的做法就是重写ondraw()调整画布,然后调用super.onDraw()。

  • 向上的Seekbar
    protected void onDraw(Canvas c) {
        c.rotate(-90);
        c.translate(-height,0);//height是你的verticalseekbar的高
        super.onDraw(c);
    }
  • 向下的seekbar则应该是:
    protected void onDraw(Canvas c) {
        c.rotate(90);
        c.translate(0,-width);//width是你的verticalseekbar的宽
        super.onDraw(c);
    }
  • 示例代码
    public class VerticalSeekBar extends SeekBar {
        public VerticalSeekBar(Context context) {
            super(context);
        }
        public VerticalSeekBar(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
        }
        public VerticalSeekBar(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
        protected void onSizeChanged(int w, int h, int oldw, int oldh) {
            super.onSizeChanged(h, w, oldh, oldw);
        }

        @Override
        protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            super.onMeasure(heightMeasureSpec, widthMeasureSpec);
            setMeasuredDimension(getMeasuredHeight(), getMeasuredWidth());
        }

        protected void onDraw(Canvas c) {
            c.rotate(-90);
            c.translate(-getHeight(), 0);
            super.onDraw(c);
        }

        @Override
        public synchronized void setProgress(int progress) {
            super.setProgress(progress);
            onSizeChanged(getWidth(), getHeight(), 0, 0);  
        }

        @Override
        public boolean onTouchEvent(MotionEvent event) {
            if (!isEnabled()) {
                return false;
            }
            switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                case MotionEvent.ACTION_MOVE:
                case MotionEvent.ACTION_UP:
                    setProgress((int) ((int) getMax()- (getMax() * event.getY() / getHeight())));
                    break;
                default:
                    return super.onTouchEvent(event);
            }
            return true;
        }
    }  

  • 邮箱 :charon.chui@gmail.com
  • Good Luck!
自定义竖直SeekBar的实现方法 在移动应用中,用户交互的流畅性和直观性是至关重要的。SeekBar(进度条)作为常用控件之一,通常用于提供用户与应用间进行进度选择的直接途径。在传统设计中,SeekBar多以水平方向展现,但在某些特定的使用场景下,竖直方向的SeekBar显得更加合适与自然,尤其是在竖屏设备上。本章节将为读者提供对竖直SeekBar的一个概览,涵盖其基本功能、设计思路以及与水平SeekBar的主要区别。我们会从竖直SeekBar的必要性和如何在Android平台上实现它开始,逐渐过渡到更高级的定制化和性能优化技巧。 阅读详情

相关推荐

seekbar和竖向seekbar

seekbar和竖向seekbar

优雅实现垂直SeekBar:不继承Seekbar、不自定义View

实现竖直SeekBar,目前大抵有如下3种方案: 方案一:通过继承View自定义实现,如:继承View自定义实现VerticalSeekBar 方案二:通过继承SeekBar重载方法内部旋转实现,如:继承SeekBar重载方法内部旋转实现 方案三:对于API 11和更高版本,通过rotation属性在XML中指定旋转270°实现,如:使用seekbar的XML属性(android:rotation="270")获得垂直效果 看标题我们就知道,本文采用的方案三,不继承SeekBar

让学习编程变得生动有趣~ 3852

Android竖直(竖直)漂亮seekbar的源码实现

Android竖直(竖直)漂亮seekbar的源码实现,有竖直的和水平的两个进度条,欢迎下载学习。

SeekBar的几种常见用法

SeekBar的几种常见方法,SeekBar详解,SeekBar总结

aylr2015的博客 5518

android 打造变化多端的SeekBar(垂直和水平)

android 打造变化多端的SeekBar(垂直和水平)。压缩包里面有三个android项目源码。都是SeekBar相关。垂直,水平的都有。我博客地址:http://blog.youkuaiyun.com/qq_16064871。

竖直的SeekBar

竖直的SeekBar,下方有Textview显示进度,代码中有两个方向的进度条

自定义竖直方向的seekbar(一)

众所周知,安卓系统自带的seekbar是水平方向的,但是有时候设计师设计出来的东西是竖直方向的,这个也不怪设计师,毕竟隔行如隔山,我们可以继承系统默认的seekbar自定义一个竖直方向的,原理是在ondraw的时候对控件进行旋转: import android.content.Context; import android.graphics.Canvas; import android.uti

风轻云喏 1568

垂直方向的seekbar

垂直方向的seekbar,源码仅供参考,可以自己修改

竖着的seekbar_自定义竖着的SeekBar | 学步园

一、由于android只定义了横着的SeekBar,所以竖着的SeekBar要由我们自己自定义,现在我来谈谈我自己自定义竖着的SeekBar的做法竖着的SeekBar有分方向向上和向下,不过代码的区别不是很大,下面会细讲。步骤:1、首先要新建一个类来继承AbsSeekBar,类里面再自定义一个监听器接口,比如:OnSeekBarChangeListener(这个名字可以自己定义,我这样只是为了方便...

weixin_35988836的博客 1055

金融科技数据源

数字金融开放研究平台

平平淡淡,戒急用忍,一生学闭嘴。 1762

数据结构实验1 集合的交、并、差

姓名:Far_Rainbow 学号: 202505000X 专业: 软件工程 年级:2020级 实验名称:实验1 集合的交、并、差 实验内容: (1)实验目的 通过该实验,让学生复习巩固C语言中的循环结构、循环控制条件、分支结构和数组/链表、函数的调用等有关内容,体会到用数组存储集合时,需要记录集合元素的个数,否则输出结果会出现数据越界现象。 (2)实验内容 通过键盘,分别输入两个数据元素类型为正整数的集合A和B,以负数输入为结束条件,输出两个集合的交、并、差。 (3)实验要求 从程序完善性上考虑,集合元

Far_Rainbow的博客 2179

自定义竖着的SeekBar

一、由于android只定义了横着的SeekBar,所以竖着的SeekBar要由我们自己自定义,现在我来谈谈我自己自定义竖着的SeekBar的做法 竖着的SeekBar有分方向向上和向下,不过代码的区别不是很大,下面会细讲。 步骤: 1、首先要新建一个类来继承AbsSeekBar,类里面再自定义一个监听器接口,比如:OnSeekBarChangeListener(这个名字可以自己定义,我这样

shenyuemei的专栏 8692

从零搭建《火影忍者》手游服务端:Linux环境部署与全流程实战

游戏服务器后端开发是构建大型多人在线体验的核心技术,其原理涉及高并发网络通信、分布式系统架构与数据一致性保障。在技术价值上,一套稳定高效的服务端不仅能支撑海量玩家实时交互,更是游戏业务逻辑、经济系统和安全防线的基石。典型的应用场景包括MMORPG、回合制卡牌、SLG等中重度手游。本文以《火影忍者》IP的横版卡牌回合制手游为例,聚焦于**手工服务端**的完整搭建过程,详细拆解从Linux系统初始化、MySQL与**Redis**缓存部署、核心服务编译、到代理后台联调的全链路实践,为开发者深入理解游戏后端架构提

weixin_30800615的博客 343

竖着的seekbar_SeekBar竖向 从上到下 从下到上

网上看的很多竖向的seekbar,但是进度条都是从下到上滑动,设计要求是从上到下的,就自己改了改,代码如下/*** Created by gdhuo on 2018/10/29.*/public class VerticalSeekBar extends SeekBar {private static final String TAG = VerticalSeekBar.class.getSimp...

weixin_39958559的博客 441

Ubuntu升级遇到grub-efi-amd64-signed报错?3步搞定这个烦人的EFI目录问题

本文详细解析了Ubuntu系统升级时遇到的“grub-efi-amd64-signed”报错及“cannot find EFI directory”问题。通过剖析UEFI启动机制与EFI系统分区原理,提供了从诊断到修复的三步解决方案,帮助用户快速解决因EFI目录未挂载导致的升级中断,确保系统引导正常。

assembly8low的博客 585

西门子TP900精智系列触摸屏和三菱Q系列PLC以太网通信的组态步骤

西门子TP900精智系列触摸屏和三菱Q系列PLC以太网通信的组态步骤

Robot_PLC_HMI_Automation 6100

竖着的seekbar_Android中实现竖版的seekbar

import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.view.MotionEvent;import android.widget.SeekBar;public class VerticalSeekBar extends SeekBa...

weixin_28814119的博客 550

Nova — GPU/vGPU 虚拟机

目录 文章目录目录云主机使用显卡的实现方式虚拟显卡物理显卡直通物理显卡虚拟化 云主机使用显卡的实现方式 采用虚拟显卡 采用物理显卡直通 采用物理显卡虚拟化 虚拟显卡 虚拟显卡技术,主要用于虚拟机 Remote Console 领域,如:VNC(Virtual Network Computing,虚拟网络计算机),它能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上。 VNC 主要由 VNC server 和 VNC viewer 两部分组成。用户需先将 VNC server 安装在被远程操控的计算

烟云的计算 2430

在android里做一个竖着的seekbar

      工作繁忙,总想有机会停下来喘口气,整理一下思路,做一些积累,但是这样的机会很少。要做android的界面,基础的要求是熟悉那些内置的组件(prebuilt componments),而有时候这些组件是不够用的,这时候我们就需要自己写一个新的,或者修改内置的。这就要求我们了解更多知识,比如各个View是怎么画出来的,UI上各种事件是如何分发和处理的等等。这些我都计划写出来和大家分享,

demon的专栏 3万+

【SAP HANA 24】HANA与Oracle SQL语法对照表

HANA SQL参考及Oracle 语法对照

探索 Java 编程的技巧、最佳实践和解决方案。本博客提供针对 Java 开发者的实用指南,涵盖从基础到高级话题,旨在提升编程效率和技能。 1427

【华为OD机试真题】459、小扇和小船的数字游戏、数字游戏 | 机试真题+思路参考+代码解析(CD卷)(C++、Java、Py)

### 🎃题目描述 >小扇和小船今天又玩起来了数字游戏,小船给小扇一个正整数 n(1  现在求 m 的最小值

KJ.JK 1720

竖着的seekbar_Android:获得一个竖的seekbar

package com.dh.shoudiantong.screendatils;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.ViewConfigur...

weixin_29041195的博客 199

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

android开发之做一个竖着的seekbar

工作繁忙,总想有机会停下来喘口气,整理一下思路,做一些积累,但是这样的机会很少。要做android的界面,基础的要求是熟悉那些内置的组件(prebuilt componments),而有时候这些组件是不够用的,这时候我们就需要自己写一个新的,或者修改内置的。这就要求我们了解更多知识,比如各个View是怎么画出来的,UI上各种事件是如何分发和处理的等等。这些我都计划写出来和大家分享,网络上中文资料,

一个本科小生的奋斗史 4578

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

android竖着的seekbar

以前网上有位虾士发过一篇文章是关于竖着的seekbar,但是也没有确定是否可行.最近看了vlc的音效处理.就是用到竖着的seekbar,所以分享下代码: 也可以自己查看它的源码: [code="java"] import android.content.Context; import android.graphics.Canvas; import android.util.Attri...

wshwrf的专栏 341
上一篇: 手机摇晃
下一篇: 任务管理器(ActivityManager)
CharonChui
博客等级 码龄12年 66粉丝 134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值