我正在学习一些安卓开发人员教程,特别是位于here的Gallery View小部件我已经完成了阶段1和2,但我似乎收到了3个错误,我无法理解我做错了什么,因为我直接从教程中复制和粘贴了代码,并对代码进行了一处更改,即R.layout.events而不是R.layout.main
以下是代码
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Gallery;
import android.widget.Toast;
public class Events extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.events);
Gallery gallery = (Gallery) findViewById(R.id.gallery1);
gallery.setAdapter(new ImageAdapter (this));
gallery.setOnClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v, int position, long id) {
Toast.makeText(Events.this, "" + position, Toast.LENGTH_LONG).show();
}
});
}}我得到的错误如下:
无法将ImageAdapter解析为类型第18行Java问题OnItemClickListener无法解析为类型第20行Java问题
类型AdapterView中的方法setOnClickListener(View.OnClickListener)不适用于参数(新的OnItemClickListener(){})第20行Java问题
任何建议或指示都将不胜感激。提前谢谢。
发布于 2012-01-25 04:29:12
监听程序类型错误。应该是View.OnClickListener。
gallery.setOnClickListener(new View.OnClickListener() { ....或者使用setOnItemClickListener...
gallery.setOnItemClickListener(new AdapterView.OnItemClickListener() { ...发布于 2012-01-25 04:29:05
ImageAdapter是在post中进一步定义的自定义BaseAdapter,位于第6点。
实例化一个名为ImageAdapter的自定义BaseAdapter (...)
在第6点:
public class ImageAdapter extends BaseAdapter { //(...)https://stackoverflow.com/questions/8993544
复制相似问题