• 自定义ImageButton,实现快进快退功能


          具体做法是仿照系统的RockAudioPlayer,我也是通过查看源码,然后把它简化出来,更容易于应用。通过自定义一个RepeatingImageButton,当然这个名字可以自己更改,RepeatingImageButton里的代码可以查看RockAudioPlayer的源码,我这里只给出经过简化过的java代码。

    1 public class MainActivity extends Activity {
    2 /** Called when the activity is first created. edit by etgyd*/
    3 private RepeatingImageButton last;
    4 @Override
    5 public void onCreate(Bundle savedInstanceState) {
    6 super.onCreate(savedInstanceState);
    7 setContentView(R.layout.main);
    8 last = (RepeatingImageButton) findViewById(R.id.last);
    9 last.setRepeatListener(rep, 260);
    10 last.setOnClickListener(new OnClickListener() {
    11
    12 @Override
    13 public void onClick(View v) {
    14 // TODO Auto-generated method stub
    15   System.out.println("last");
    16 }
    17 });
    18 }
    19
    20 private RepeatingImageButton.RepeatListener rep = new RepeatingImageButton.RepeatListener() {
    21
    22 @Override
    23 public void onRepeat(View v, long duration, int repeatcount) {
    24 // TODO Auto-generated method stub
    25 scanBackward(repeatcount, duration);
    26 }
    27 };
    28
    29 private void scanBackward(int repcnt, long delta) {
    30 try {
    31 if (delta < 5000) {
    32 // seek at 10x speed for the first 5 seconds
    33 delta = delta * 10;
    34 System.out.println("long pause" + delta);
    35 } else {
    36 // seek at 40x after that
    37 delta = 50000 + (delta - 5000) * 40;
    38 System.out.println("long pause fast");
    39 }
    40 } catch (Exception ex) {
    41 }
    42 }
    43 }
  • 相关阅读:
    C#随笔
    C# 程序间通信的各种途径及解析
    C#控件根据窗体改变大小
    c# SqlHelper Class
    初始Java
    函数基础
    基本数据类型的高级特性:
    python基础
    C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现。
    Oracle使用dblink导入数据
  • 原文地址:https://www.cnblogs.com/etgyd/p/2013762.html
Copyright © 2020-2023  润新知