我的程序有问题。
错误如下:
The type MainActivity must implement the inherited abstract method View.OnClickListener.onClick(View)
代码如下:
import android.os.Bundle;
import android.app.Activity;
import android.view.View.OnClickListener;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity implements OnInitListener, OnClickListener {
private TextToSpeech tts;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tts = new TextToSpeech(this, this);
}
public void OnClick (View view){
EditText et = (EditText) findViewById (R.id.editText1);
tts.speak(et.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
}
public void onInit (int status){
Button button = (Button) findViewById (R.id.button1);
button.setOnClickListener(this);
tts.setLanguage(Locale.GERMAN);
tts.setSpeechRate(1);
}
}
我刚刚开始使用 eclipse
进行编程,而且我确实是一个初学者。
那么我该怎么做才能解决这个问题呢?
最佳答案
The type MainActivity must implement the inherited abstract method View.OnClickListener.onClick(View)
您需要实现onClick(View)
。由于它没有实现,你会得到错误。
所以改为
@Override
public void onClick (View view){ //OnClick You has O in caps
EditText et = (EditText) findViewById (R.id.editText1);
tts.speak(et.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
}
添加 Override 注释并将 OnClick
更改为 onClick
。
关于java - Eclipse OnClickListener MainActivity 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20609404/