Dúvida em um método - Help!

Boa Noite,

Estava seguindo um tutorial e fiz todos os passos corretamente. Embora tenha 1 metodo que esta dando problema e não sei o que pode ser para resolve-lo.

lista.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView argO, View arg1, int arg2,long arg3){

o AdapterView está pedindo um parametro, só que não sei o que ele está pedindo. No tutorial que estou seguindo o código está do mesmo jeito que acima.

“Essa aplicação consiste em uma lista telefônica já pronta com contatos. Quando selecionamos
um contato, ele mostra na tela uma mensagem com o nome selecionado.”

[quote] lista.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView argO, View arg1, int arg2,long arg3){ [/quote]

Boa Noite!

Este código tá meio estranho… Pode colocar o resto do programa?

Eu nunca vi um parametro de um método no caso do ‘setOnItemClickListener’ receber o que ele ta recebendo… será que não falta um parenteses? Tipo:

lista.setOnItemClickListener(new OnItemClickListener() ) <-aqui. { public void onItemClick(AdapterView argO, View arg1, int arg2,long arg3) {

E mesmo assim ainda ta confuso rs. Boa Sorte!

O código abaixo é exatamente o mesmo que está no tutorial só que não consigo rodar

[code]package br.com.android;

import android.app.Activity;
import android.os.Bundle;
import android.app.;
import android.view.
;
import android.widget.*;
import android.widget.AdapterView.OnItemClickListener;

public class AppLista extends Activity {
/** Called when the activity is first created. */
public ListView lista;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,contatos);
lista = (ListView) findViewById(R.id.lstcontatos);
lista.setAdapter(adapter);
lista.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView argO, View arg1, int arg2,long arg3){
if (lista.getSelectedItem() != null){
AlertDialog.Builder dialogo = new AlertDialog.Builder(AppLista.this);
dialogo.setTitle(“Contato selecionado”);
dialogo.setMessage(lista.getSelectedItem().toString());
dialogo.setNeutralButton(“ok”, null);
dialogo.show();
}}
});
}
static final String[] contatos = new String[] {
“Alline”, “Lucas”, “Rafael”, “Tales”, “Vilma”, “Janio”
};
}[/code]

Dá pra postar o erro?

Multiple markers at this line
- implements android.widget.AdapterView.OnItemClickListner.onItemClick
- AdapterView is a raw type, References to generic type AdapterView should be parameterized
- AdapterView is a raw type, References to generic type AdapterView should be parameterized

Esse é o erro do console? Ou não tem console?

Deu essa notificação no Eclipse. Quando tento rodar a aplicação abre o emulador e exibe uma mensagem de erro.

Qual é essa msg que exibe dá pra postar?

The application Lista de contatos (process br.com.android) has stopped unexpectedly. Please try again.

Aparece essa mensagem todas as vezes que possui algum problema no código e eu mando executar o programa.

Essa mensagem de erro ai ta de brincadeira :lol:

Não sei o que pode ser… :frowning:

Tenta isso:

... lista.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> <- ISSO AQUI argO, View arg1, int arg2,long arg3){ if (lista.getSelectedItem() != null){ AlertDialog.Builder dialogo = new AlertDialog.Builder(AppLista.this); dialogo.setTitle("Contato selecionado"); dialogo.setMessage(lista.getSelectedItem().toString()); dialogo.setNeutralButton("ok", null); dialogo.show(); }} }); ...

Não deu … vou tentar refazer esse aplicação de outra maneira.

Obrigado pela ajuda.

Antes de tentar refazer, va no Eclipse em Window > Show View… Other… e escolha Logcat, é onde voce vai ver os logs. Assim que voce não tiver apenas esse erro generico, volte aqui. :wink: