【问题标题】:How can I create round volume control in android?如何在 android 中创建圆形音量控制?
【发布时间】:2011-09-24 02:44:43
【问题描述】:

我需要创建圆形音量控制,它应该看起来像这个示例:

http://dmonzon.com/2011/04/16/free-tabletphone-user-interface-professional-set-v-7/

是否有任何教程或想法哪种方式更适合这样的事情?

【问题讨论】:

  • 我不确定,但我知道你一定要确保它上升到 11。

标签: android controls volume rounding


【解决方案1】:

一种简单的方法是使用自定义视图:

  • 创建自定义视图
  • 在自定义视图中绘制按钮
  • 使用 onTouchEvent
  • 在 MotionEvent.ACTION_MOVE 调用中 无效();
  • 在 onDraw 中计算夹角 你的手指和中心 使用 atan2() 函数的按钮
  • 然后使用 canvas.rotate 制作 按钮跟随手指。

一些可能有帮助的例子: 简单的自定义视图以及如何设置初始数据(例如音量):View Inflation and custom views

旋转位图:Android: How to rotate a moving animated sprite based on the coordinates of its destination

onTouchEvent 和无效:Make certain area of bitmap transparent on touch

自定义视图将如何回传音量?如果您的活动有一个公共静态音量变量,那么自定义视图可以通过调用 MyActivity.volume = (100/360)*angle 来设置音量,或者更好的是您的活动可以有一个公共静态方法 setVolume(volume){...}然后可以在音量更改时执行一些代码 - 在音量按钮自定义视图中调用 MyActivity.setVolume(volume);

【讨论】:

    猜你喜欢
    • 2013-04-18
    • 2020-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-28
    • 2014-02-19
    • 1970-01-01
    相关资源
    最近更新 更多