I have my custom listview and at the end of each row I have ImageView to delete that row from the list but when I click on this image I get "Arryindesoutofboundexception: length=681 indez=-1"
Help me
private OnClickListener imageviewClickListener = new OnClickListener() {
  @Override
  public void onClick(View v) 
  {
      int index;
        index=listView.getSelectedItemPosition();//itemsListView is the listview
        dataAdapter.remove(topicsList.get(index));
        topicsList.clear();
        dataAdapter.notifyDataSetChanged();
  }
};
                Your item isn't selected because the image intercepts the touch event, therefore the selected position is -1. In order to make this work you need to tell the OnClickListener what item it belongs to:
private static class MyClickListener implements OnClickListener {
    private final int mIndex;
    private MyClickListener (int index) {
        mIndex = index;
    }
    @Override
    public void onClick(View v) {
        dataAdapter.remove(topicsList.get(mIndex));
        topicsList.clear();
        dataAdapter.notifyDataSetChanged();
    }
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With