我正在尝试在我的Java / Android代码中使用OOP,但我不明白为什么OnSeekBarChangeListener
在我的新课程中不起作用。
是否禁止使用OnSeekBarChangeListener
外部主要活动?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mp = new MediaPlayer();
timescroller = (SeekBar) findViewById(R.id.seekBar);
TimeScroller Tm = new TimeScroller();
Tm.mp = mp;
Tm.ts = timescroller;
Tm.mTimeScroller();
timescroller.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
if(b){
mp.seekTo(i);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
mp.setVolume(0,0);
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
mp.setVolume(1,1);
}
});
}
这是我的班级
package com.phillipvm.gridlayout;
import android.media.MediaPlayer;
import android.widget.SeekBar;
public class TimeScroller {
MediaPlayer mp;
SeekBar ts;
public void mTimeScroller(MediaPlayer _mp,SeekBar _ts){
mp =_mp;
ts = _ts;
ts.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
if(b){
mp.seekTo(i);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
mp.setVolume(0,0);
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
mp.setVolume(1,1);
}
});
}
}
答案 0 :(得分:0)
我看不到您正在使用该课程的代码! 你正在调用Tm.mTimeScroller();但是在你的班级中,该方法需要2个参数!