Android开发人员教程中的错误?

时间:2012-01-24 20:19:33

标签: android

我正在通过一些Android开发人员教程,特别是位于here的Gallery View Widget,我已经完成了第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)不适用于参数(new OnItemClickListener(){})第20行Java问题

任何建议或指示都将不胜感激。提前致谢。

2 个答案:

答案 0 :(得分:6)

ImageAdapter是一个自定义的BaseAdapter,在帖子的第6点进一步定义。

  

实例化名为ImageAdapter的自定义BaseAdapter(...)

在第6点:

public class ImageAdapter extends BaseAdapter { //(...)

答案 1 :(得分:3)

错误的侦听器类型。它应该是View.OnClickListener。

gallery.setOnClickListener(new View.OnClickListener() { ....

或使用setOnItemClickListener ...

gallery.setOnItemClickListener(new AdapterView.OnItemClickListener() { ...