【问题标题】:How to create a fade out button如何创建淡出按钮
【发布时间】:2013-09-27 20:24:21
【问题描述】:

我想在点击时制作一个按钮来淡出音乐并调用媒体播放器停止?

我希望超过 5 秒

我试图制作一个类似代码的计时器,但我不知道如何让它工作 - 你们能帮我吗?

float volume = 1;
float speed = 0.05f;

    public void FadeOut(float deltaTime); 
{ 
mpMain.setVolume(1, 1); 
volume -= speed* deltaTime; } 
public void FadeIn(float deltaTime1); 
{ 
mpMain.setVolume(0, 0); 
volume += speed* deltaTime1; } 


}}

【问题讨论】:

  • 请显示您尝试过的代码以及为什么它不起作用
  • 我尝试了一堆代码,并在它不起作用时将其删除并重新开始......最新的是...... public void FadeOut(float deltaTime); { mpMain.setVolume(1, 1);体积-=速度* deltaTime; } public void FadeIn(float deltaTime1); { mpMain.setVolume(0, 0);音量 += 速度* deltaTime1; } 按钮 button1 = (Button) findViewById(R.id.button1); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { FadeOut. }}
  • developer.android.com/reference/android/media/… setVolume 带定时器应该还不错吧我觉得
  • public void FadeOut(float deltaTime); 这是什么?为什么方法声明后有分号?您能否发布问题中格式化的代码
  • @ZimZux,请编辑您的问题以包含您的代码,而不是在 cmets 中发布代码。

标签: java android eclipse android-mediaplayer


【解决方案1】:

两者的区别

Android: How to create fade-in/fade-out sound effects for any music file that my app plays?

您发布的代码是将音量直接设置为 1,并忽略您正在更改的音量变量。而是像在其他问题的解决方案中一样使用volume 变量。这也需要通过计时器多次调用。

deltatime 应该是自上次调用该方法以来经过的时间量。这是为了在手机滞后或其他情况下保持淡入淡出一致。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-31
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多