android:如何用音频文件滑动活动

时间:2012-01-27 13:10:54

标签: android

大家好我需要实现以下目标:

我只有一个类,我把所有东西都变成动态的,这样我就可以在一个文件中有多个活动。 当用户进入应用程序时,它显示一个列表,在他选择它之后,他选择其中一个并显示图像并开始播放音频文件,在同一个窗口中我有下一个和上一个按钮。

而不是我需要滑动才能实现的下一个和上一个按钮如何实现它。这是我的下一个和上一个的代码

if (v == previous) {
            v.startAnimation(AnimationUtils.loadAnimation(this, R.anim.image_click));
            if (i == 0) {
                playoverready.setText(" ");
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage("No previous points as this is the first point");
                builder.setCancelable(true);
                builder.setPositiveButton("OK",
                        new DialogInterface.OnClickListener() {

                            @Override
                            public void onClick(DialogInterface dialog, int id) {
                                // TODO Auto-generated method stub
                                dialog.cancel();
                            }
                        });
                builder.create().show();
                //previous.setEnabled(false);

            } else {
                handler.removeCallbacks(r);
                handler.removeCallbacks(rprv);
                handler.removeCallbacks(rn);
                handler.removeCallbacks(playisover);
                record.setEnabled(false);
                play.setEnabled(false);
                replay.setEnabled(false);
                display.setText(" ");
                playoverready.setText(" ");
                indicator.setText(" ");
                System.out.println("buttons are disabled...");

                handler.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        next.setImageResource(R.drawable.next);
                    }
                },1000);

                i--;

                img.setBackgroundResource(imgNum[i]);

                if (apple.isPlaying()) {
                    apple.stop();
                }
                if (female.isPlaying()) {
                    female.stop();
                    if (mp.isPlaying()) {
                        mp.pause();
                        mp.seekTo(-5);
                    }
                }
                apple = MediaPlayer.create(this, mediaNum[i]);
                handler.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        apple.start();
                        record.setEnabled(false);
                        play.setEnabled(false);
                        replay.setEnabled(false);
                    }
                }, 2000);

                rprv = new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        record.setEnabled(true);
                        play.setEnabled(true);
                        replay.setEnabled(true);
                        indicator.setText("Start Practise");
                        System.out.println("buttons are enabled first...");
                    }
                };
                handler.postDelayed(rprv, (apple.getDuration()) + 2500);

                if (mp.isPlaying()) {
                    mp.pause();
                    mp.seekTo(-5);
                    //mp.stop();
                    /*mp=null;
                    mp.release();*/
                }
                display.setText("");
                if(rec == true){
                    rec = false;
                    record.setImageResource(R.drawable.record);
                    recorder.stop();
                    recorder.release();
                }

            }
        }
case R.id.bnext:
            v.startAnimation(AnimationUtils.loadAnimation(this, R.anim.image_click));
            i++;
            if (i >= noOfQues) {
                playoverready.setText(" ");
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage("You are already in the last point");
                builder.setCancelable(true);
                builder.setPositiveButton("OK",
                        new DialogInterface.OnClickListener() {

                            @Override
                            public void onClick(DialogInterface dialog, int id) {
                                // TODO Auto-generated method stub
                                dialog.cancel();
                            }
                        });
                builder.create().show();
                //next.setEnabled(false);
                i--;
            } else {
                handler.removeCallbacks(r);
                handler.removeCallbacks(rprv);
                handler.removeCallbacks(rn);
                handler.removeCallbacks(playisover);
                record.setEnabled(false);
                play.setEnabled(false);
                replay.setEnabled(false);
                display.setText(" ");
                playoverready.setText(" ");
                indicator.setText(" ");
                System.out.println("entered buttons are disabled...");


                img.setBackgroundResource(imgNum[i]);

                if (apple.isPlaying()) {
                    apple.stop();
                }
                if (female.isPlaying()) {
                    female.stop();
                    if (mp.isPlaying()) {
                        mp.pause();
                        mp.seekTo(-5);
                    }
                }
                apple = MediaPlayer.create(this, mediaNum[i]);
                handler.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        apple.start();
                        record.setEnabled(false);
                        play.setEnabled(false);
                        replay.setEnabled(false);
                    }
                }, 2000);
                rn = new Runnable() {

                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        record.setEnabled(true);
                        play.setEnabled(true);
                        replay.setEnabled(true);
                        indicator.setText("Start Practise");
                        System.out.println("buttons are enabled first...");
                    }
                };
                handler.postDelayed(rn, (apple.getDuration()) + 2500);


                previous.setEnabled(true);
                next.setEnabled(true);
                if (mp.isPlaying()) {
                    mp.pause();
                    mp.seekTo(-5);
                    //mp.stop();
                    /*mp=null;
                    mp.release();*/
                }
                display.setText("");
                if(rec == true){
                    rec = false;
                    record.setImageResource(R.drawable.record);
                    recorder.stop();
                    recorder.release();
                }

            }
            break;

提前感谢任何帮助

1 个答案:

答案 0 :(得分:0)