I want to make click listner on button on listview ..i made listview using SimpleAdapter as given code...

enter image description here

SimpleAdapter adapter = new SimpleAdapter(
                        UserBookmarks.this, bookmarksList,
                        R.layout.list_view_boookmarks, new String[] { BOOKMARK_NAME , BOOKMARK_CATEGORY , BOOKMARKS_RATTING_BAR, BOOKMARKS_REVIEW_TOTAL , BOOKMARKS_CITY }, new int[] { R.id.business_name , R.id.business_category , R.id.ratting, R.id.review_count,R.id.business_city });


adapter.setViewBinder(new SimpleAdapter.ViewBinder() {
    @Override
    public boolean setViewValue(View view, Object data, String textRepresentation)
    {
        if (view.getId() == R.id.removeBookmark) 
        {
              Button b=(Button) view;
              b.setOnClickListener( new View.OnClickListener() {

                 @Override
                 public void onClick(View v) {
                     Log.d("HIiiiiiiiiiii", "Button clickeddddddddd");
                     Toast.makeText(getApplicationContext(), "Click listner called", Toast.LENGTH_SHORT).show();
                 }
             });
             return true; 
         }
        return false;
    }
 });
setListAdapter(adapter);

but onclick listner not working on this code....i have tried too much but could not solve this ....if anyoone get plz answer... and how to know on which button id user clicked..means list position...

有帮助吗?

解决方案

Check the following code

SimpleAdapter adapter = new SimpleAdapter(UserBookmarks.this, bookmarksList,
  R.layout.list_view_boookmarks, new String[] { BOOKMARK_NAME , BOOKMARK_CATEGORY ,         BOOKMARKS_RATTING_BAR, BOOKMARKS_REVIEW_TOTAL , BOOKMARKS_CITY ,**BUTTONLABEL**}, new int[] { R.id.business_name , R.id.business_category , R.id.ratting, R.id.review_count,R.id.business_city ,**R.id.removeBookmark**});

add the bold field in your code Click here for code Help

其他提示

I think the problem is arising because of this id "removeBookmark".

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top