学习SeekBar时报以下错误
:
Multiple markers at this line
- OnSeekBarChangeListener cannot be resolved to a type- The method setOnSeekBarChangeListener(SeekBar.OnSeekBarChangeListener) in the type SeekBar is not applicable for the
arguments (new OnSeekBarChangeListener(){})
The method onStopTrackingTouch(SeekBar) of type new OnSeekBarChangeListener(){} must override or implement a supertype method
The method onProgressChanged(SeekBar, int, boolean) of type new OnSeekBarChangeListener(){} must override or implement a supertype method
package com.example.seekbartext;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
TextView tv;
SeekBar sb;
int status;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.textView1);
sb = (SeekBar) findViewById(R.id.seekBar1);
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
Toast.makeText(MainActivity.this, "滑动结束", 0).show();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
Toast.makeText(MainActivity.this, "滑动开始", 0).show();
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
tv.setText("当前值为:"+progress);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
主要解决方法是发现
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
new的监听器通过提示Alt+/自动输入,但并没有自动导包
导入包就能解决
import android.widget.SeekBar.OnSeekBarChangeListener;