java - ListView 与 ArrayAdapter 中的 setOnItemClickListener 错误

标签 java android listview android-arrayadapter onitemclicklistener

我正在开发Android应用程序,它需要listviewArrayAdapter。现在我想在此 ListView 上 onItemClickListener 。但是 IDE Anacode(与 Eclipse 相同)显示错误!

我已经尝试过此类问题帖子中的所有答案。但没有帮助!

请帮忙

//the code 
package edward.harsh.friends;

import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;   

public class ListViewSampleActivity extends Activity
{
    ListView mCountriesLV;

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

        /**
         * Get the control instances from the main.xml layout
         */
        mCountriesLV = (ListView) findViewById(R.id.countriesLV);
        mCountriesLV.setAdapter(new CountriesAdapter(this, R.layout.listview_country_row, mCountriesList));



        mCountriesLV.setOnItemClickListener(
          new OnItemClickListener() 
          {
                   @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(getApplicationContext()," name", Toast.LENGTH_SHORT).show();
}
           });

   }
}

错误消息是

   The method    setOnItemClickListener(AdapterView.OnItemClickListener in the type
  AdapterView <ListAdapter> is not applicable for the arguments (new   OnItemClickListener(){})

OnItemClickListener cannot be resolved to a type

正如一些人的建议。我什至尝试过这个

  mCountriesLV.setOnItemClickListener(new AdapterView.OnItemClickListener() 
          {
                   @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(getApplicationContext()," name", Toast.LENGTH_SHORT).show();
}
           });

但它抛出另一个错误

The type new AdapterView.OnItemClickListener(){} must implement the inherited abstract method
AdapterView.OnItemClickListener.onItemClick(AdapterView <?>, View, int, long)

最佳答案

尝试在setOnItemClickListener方法中添加AdapterView.OnItemClickListener(),它不适用于OnItemClickListener

mCountriesLV.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

        }
    });

关于java - ListView 与 ArrayAdapter 中的 setOnItemClickListener 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40542291/

相关文章:

java - 带有 GridBagLayout 的 java 侧边栏

java - 我的 Java 应用程序的动态启动画面

android - Flutter Custompainter canvas drawimage 不工作

android - 如何在 ListView 中获取列表项位置?

android - ListView在android中使用数据库

java - 带数字键盘的按键监听器?

java - 如何使 BufferedReader() 类读取文件夹中的内容?

android - 在没有 BluetoothGATT 的情况下断开 BluetoothDevice

android - AndEngine GLES2 调整大小后 Sprite 质量低

jquery - 在列表之间放置空格