gpt4 book ai didi

java - Android ListView 对象不喜欢新的 onItemClickListener() 作为 setOnitemClickListener() 的参数

转载 作者:搜寻专家 更新时间:2023-11-01 09:01:44 24 4
gpt4 key购买 nike

因此,我正在尝试学习一些基本的 android 编程,但当我尝试为以编程方式生成的 ListView 设置 onItemClick() 方法时遇到了障碍。 eclipse 给我的错误是“AdapterView 类型的方法 setOnItemClickListener(AdapterView.OnItemClickListener) 不适用于参数 (new onItemClickListener(){})”。我完全糊涂了。我曾多次尝试清理该项目,以防那里出现问题。我还尝试了在 this similar question 中找到的建议没有成功。不幸的是,这是我发现的唯一与我的问题相关的问题,因为大多数关于 onItemClickListener 的问题都是处理它没有被正确调用。我已经在建议的代码中查看了这些问题,并试图确保我的代码遵循建议的内容。任何帮助,将不胜感激。这是有问题的代码 fragment :

import java.util.ArrayList;
import android.app.Activity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.view.View;
import android.widget.AdapterView;
import android.widget.TextView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class MainActivity extends Activity {
public ArrayList<ContactData> data;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.contact_list);
data = getContacts(); // creates arraylist for contact data
ArrayList<String> names = new ArrayList<String>();
for (ContactData item: data) {
names.add(item.getName());
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.textview, names);
ListView listView = (ListView) findViewById(R.id.listview1);
listView.setAdapter(adapter);
//listView.setClickable(true);
// set click listener
listView.setOnItemClickListener(new AdapterView.onItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
TextView textView = (TextView) view;
String name = textView.getText().toString();
Toast.makeText(getBaseContext(), name, Toast.LENGTH_SHORT).show();
}
});
}

编辑:在使用 eclipse 时发现运气不佳,我一时兴起尝试了 Google 提供的终端工具,并尝试以这种方式构建我的项目。它起作用了,所以 eclipse 搞砸了。我不确定如何或什么,但现在一切正常。

最佳答案

这是一个小错别字。换行

listView.setOnItemClickListener(new AdapterView.onItemClickListener() {

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

(您在 OnItemClickListener 中漏掉了大写字母“O”)

关于java - Android ListView 对象不喜欢新的 onItemClickListener() 作为 setOnitemClickListener() 的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14597168/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com