OnClickListener не может быть преобразован в тип (Eclipse) - PullRequest
7 голосов
/ 18 марта 2011

Здравствуйте, я новичок в программировании, я пытаюсь создать свое первое простое приложение, я собираюсь сыграть короткий звуковой клип по нажатию кнопки ImageButton.

при наборе кода я получаю сообщение об ошибке;

 Button.setOnClickListener(new OnClickListener() {

Слушатель при нажатии подчеркивается, и когда я перехожу к ошибке, затмение говорит мне, что OnClickListener не может быть разрешен для типа.

Вот мой код:

import android.app.Activity;
import android.os.Bundle;
import android.view.view;
import android.view.view.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;

public class main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

final ImageButton Button = (ImageButton) findViewById(R.id.imageButton1);
Button.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        // Perform action on clicks

    }
});

Я прочитал предложение с предложением добавить;

import android.view.view;

а также

import android.view.view.OnClickListener;

Эти операторы импорта также выделены. Могут ли эти ошибки быть вызваны настройкой eclipse на моем компьютере?

Любая помощь будет принята с благодарностью

Ответы [ 6 ]

12 голосов
/ 18 марта 2011

Для начала, всегда лучше позволить Eclipse управлять всем импортом, нажимая Ctrl + Shift + O, когда вы видите ошибку импорта.

Похоже, ваша проблема связана с:

import android.view.view;

Что должно быть:

import android.view.View;

То же самое относится и к android.view.View.OnClickListener.

Если вы удалите две строки, которые вы добавили вручную, и нажмете Ctrl + Shift + O, все должно исправить себя.

4 голосов
/ 19 мая 2013

Добавить

import android.view.View.OnclickListener

в ваш import раздел, и он должен работать.

0 голосов
/ 10 декабря 2013

Если вы используете новую Android Studio, вы должны объявить свой новый OnClickListener как View.OnClickListener.В противном случае Android Studio запутается и не поймет.

0 голосов
/ 09 сентября 2013

если у вас все еще есть ошибка, вы можете сделать класс абстрактным следующим образом открытый абстрактный класс MainActivity расширяет Activity, реализует OnClickListener {

0 голосов
/ 18 марта 2011

убедитесь, что ваш класс реализует OnClickListener

public class main extends Activity implements OnClickListener {
0 голосов
/ 18 марта 2011

Второе «представление» в операторе импорта является классом (следовательно, OnClickListener является внутренним классом / интерфейсом) и должно начинаться с заглавной буквы:

import android.view.View.OnClickListener;
...