java android处理程序调用
我是android编程新手。我看到了许多处理事件的方法,但当我试图通过调用处理程序类来处理事件时,它会在处理类名时出错:java android处理程序调用,java,android,Java,Android,我是android编程新手。我看到了许多处理事件的方法,但当我试图通过调用处理程序类来处理事件时,它会在处理类名时出错: package com.example.test; import android.app.Activity; import android.content.DialogInterface.OnClickListener; import android.os.Bundle; import android.view.View; import android.widget.But
package com.example.test;
import android.app.Activity;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//attach an instance of HandleClick to the Button
findViewById(R.id.button1).setOnClickListener(new HandleClick());
}
private class HandleClick implements OnClickListener{
public void onClick(View arg0) {
Button btn = (Button)arg0; //cast view to a button
// get a reference to the TextView
TextView tv = (TextView) findViewById(R.id.textview1);
// update the TextView text
tv.setText("You pressed " + btn.getText());
}
}
}
“HandleClick”
出现错误,它说类应该是抽象类型吗
我不明白为什么会出现这个错误,有人能帮我吗?那是错误的OnClickListener类。你有
import android.content.DialogInterface.OnClickListener;
你需要:
import android.view.View.OnClickListener;
为了将来参考,您得到的错误是“类型必须实现继承的抽象方法…”。这是因为您需要实现DialogInterface的onClick,这应该会让您注意到它是错误的导入(因为您有
onClick(View)
)简化并使用它
b1 = (Button) findViewById(R.id.button1);
TextView tv = (TextView) findViewById(R.id.textview1);
b1.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Toast msg = Toast.makeText(getBaseContext(),
"You have clicked Button 1", Toast.LENGTH_LONG);
msg.show();
tv.setText("You pressed " + btn.getText());
}
});
您导入了错误的OnClickListener,您应该从android.view.view导入一个