Android 如何获取listview中按钮的位置?

Android 如何获取listview中按钮的位置?,android,listview,button,Android,Listview,Button,我有一个列表视图与Textview,ImageView和按钮,我想改变的是,当它点击按钮的背景,我希望你了解我的问题 这是适配器 package com.example.mahdi.chat; import android.app.Activity; import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.os.AsyncTa

我有一个列表视图与Textview,ImageView和按钮,我想改变的是,当它点击按钮的背景,我希望你了解我的问题

这是适配器

package com.example.mahdi.chat;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v4.app.Fragment;
import android.text.Html;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.method.LinkMovementMethod;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.VolleyLog;
import com.android.volley.toolbox.ImageLoader;
import com.android.volley.toolbox.NetworkImageView;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import org.w3c.dom.Text;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import circleview.CircleImageView;

public class FeedListAdapter extends BaseAdapter {

private static final String TAG = FeedListAdapter.class.getSimpleName();

private Activity activity;
private LayoutInflater inflater;
private List<FeedItem> feedItems;
JSONParser jsonParser = new JSONParser();
private String URL = "http://10.0.3.2/social/like.php";
private String user_id;
private Button like,comment;

private static final String TAG_SUCCESS = "success";
FeedItem item;
ImageLoader imageLoader = AppController.getInstance().getImageLoader();

public FeedListAdapter(Activity activity, List<FeedItem> feedItems, String user_id) {
    this.activity = activity;
    this.feedItems = feedItems;
    this.user_id = user_id;
}

@Override
public int getCount() {
    return feedItems.size();
}

@Override
public Object getItem(int location) {
    return feedItems.get(location);
}

@Override
public long getItemId(int position) {
    return position;
}

public void refresh(List<FeedItem> newlist) {
    feedItems.addAll(newlist);
    this.notifyDataSetChanged();
}
public List<FeedItem> getData() {
    return feedItems;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {

    if (inflater == null)
        inflater = (LayoutInflater)parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    if (convertView == null)
        convertView = inflater.inflate(R.layout.posts_row, null);

    if (imageLoader == null)
        imageLoader = AppController.getInstance().getImageLoader();

   final  TextView name = (TextView) convertView.findViewById(R.id.name);
    TextView timestamp = (TextView) convertView
            .findViewById(R.id.time);
    TextView statusMsg = (TextView) convertView
            .findViewById(R.id.status);
    TextView url = (TextView) convertView.findViewById(R.id.url);
    CircleImageView profilePic = (CircleImageView) convertView
            .findViewById(R.id.profile_img);
    FeedImageView feedImageView = (FeedImageView) convertView
            .findViewById(R.id.image);


    TextView nbr_likes = (TextView)convertView.findViewById(R.id.nbr_likes);
    TextView nbr_comments = (TextView)convertView.findViewById(R.id.nbr_comments);


    item = feedItems.get(position);




    like =(Button)convertView.findViewById(R.id.like);
    comment =(Button)convertView.findViewById(R.id.comment);




    like.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {

            item = feedItems.get(position);
            Map<String, String> params = new HashMap<String, String>();
            params.put("post_id", item.getId());
            params.put("user_id", user_id);
            Toast.makeText(activity, item.getId(), Toast.LENGTH_SHORT).show();
            Toast.makeText(activity, user_id, Toast.LENGTH_SHORT).show();
            // making fresh volley request and getting json
            CustomRequest jsonReq = new CustomRequest(Request.Method.POST,
                    URL,params , new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    VolleyLog.d(TAG, "Response: " + response.toString());
                    if (response != null) {

                        parseJsonFeed(response);


                    }
                }
            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG, "Error: " + error.getMessage());
                }
            });

            // Adding request to volley request queue
            AppController.getInstance().addToRequestQueue(jsonReq);



        }

    });



    comment.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {



        }


    });

    name.setText(item.getName());

   nbr_likes.setText(item.getNbrLikes()+ " Likes");
    nbr_comments.setText(item.getNbrComments() + " Comments");


    // Converting timestamp into x ago format
    CharSequence timeAgo = DateUtils.getRelativeTimeSpanString(
            Long.parseLong(item.getTimeStamp()),
            System.currentTimeMillis(), DateUtils.SECOND_IN_MILLIS);
    timestamp.setText(timeAgo);

    // Chcek for empty status message
    if (!TextUtils.isEmpty(item.getStatus())) {
        statusMsg.setText(item.getStatus());
        statusMsg.setVisibility(View.VISIBLE);
    } else {
        // status is empty, remove from view
        statusMsg.setVisibility(View.GONE);
    }

    // Checking for null feed url
    if (item.getUrl() != null) {
        url.setText(Html.fromHtml("<a href=\"" + item.getUrl() + "\">"
                + item.getUrl() + "</a> "));

        // Making url clickable
        url.setMovementMethod(LinkMovementMethod.getInstance());
        url.setVisibility(View.VISIBLE);
    } else {
        // url is null, remove from the view
        url.setVisibility(View.GONE);
    }

    // user profile pic
    profilePic.setImageUrl(item.getProfilePic(), imageLoader);

    // Feed image
    if (item.getImge() != null) {
        feedImageView.setImageUrl(item.getImge(), imageLoader);
        feedImageView.setVisibility(View.VISIBLE);
        feedImageView
                .setResponseObserver(new FeedImageView.ResponseObserver() {
                    @Override
                    public void onError() {
                    }

                    @Override
                    public void onSuccess() {
                    }
                });
    } else {
        feedImageView.setVisibility(View.GONE);
    }
    return convertView;
}


private void parseJsonFeed(JSONObject response) {
    int success;
    try {
        success = response.getInt(TAG_SUCCESS);
        if (success == 1) {
            notifyDataSetChanged();
        } else {
            Toast.makeText(activity, "erreur", Toast.LENGTH_SHORT).show();
        }


        //listAdapter.addAll(feedItems);
    } catch (JSONException e) {
        e.printStackTrace();
    }
}
}

问题是按钮,我想改变按钮点击时的可绘制性。谢谢

编辑:

package com.example.mahdi.chat;


import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.os.AsyncTask;
import android.support.v4.app.Fragment;
import android.text.Html;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.method.LinkMovementMethod;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.VolleyLog;
import com.android.volley.toolbox.ImageLoader;
import com.android.volley.toolbox.NetworkImageView;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import org.w3c.dom.Text;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import circleview.CircleImageView;

public class FeedListAdapter extends BaseAdapter {

private static final String TAG = FeedListAdapter.class.getSimpleName();

private Activity activity;
private LayoutInflater inflater;
private List<FeedItem> feedItems;
JSONParser jsonParser = new JSONParser();
private String URL = "http://10.0.3.2/social/like.php";
private String user_id;
private Button like,comment;

private static final String TAG_SUCCESS = "success";
FeedItem item;
ImageLoader imageLoader = AppController.getInstance().getImageLoader();

public FeedListAdapter(Activity activity, List<FeedItem> feedItems, String user_id) {
    this.activity = activity;
    this.feedItems = feedItems;
    this.user_id = user_id;
}

@Override
public int getCount() {
    return feedItems.size();
}

@Override
public Object getItem(int location) {
    return feedItems.get(location);
}

@Override
public long getItemId(int position) {
    return position;
}

public void refresh(List<FeedItem> newlist) {
    feedItems.addAll(newlist);
    this.notifyDataSetChanged();
}
public List<FeedItem> getData() {
    return feedItems;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {

    if (inflater == null)
        inflater = (LayoutInflater)parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    if (convertView == null)
        convertView = inflater.inflate(R.layout.posts_row, null);

    if (imageLoader == null)
        imageLoader = AppController.getInstance().getImageLoader();

   final  TextView name = (TextView) convertView.findViewById(R.id.name);
    TextView timestamp = (TextView) convertView
            .findViewById(R.id.time);
    TextView statusMsg = (TextView) convertView
            .findViewById(R.id.status);
    TextView url = (TextView) convertView.findViewById(R.id.url);
    CircleImageView profilePic = (CircleImageView) convertView
            .findViewById(R.id.profile_img);
    FeedImageView feedImageView = (FeedImageView) convertView
            .findViewById(R.id.image);


    TextView nbr_likes = (TextView)convertView.findViewById(R.id.nbr_likes);
    TextView nbr_comments = (TextView)convertView.findViewById(R.id.nbr_comments);


    item = feedItems.get(position);




    like =(Button)convertView.findViewById(R.id.like);
    comment =(Button)convertView.findViewById(R.id.comment);



    like.setTag(position);

    like.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {

            int position = (Integer) v.getTag();

            like.setBackgroundColor(Color.BLACK);


            item = feedItems.get(position);
            Map<String, String> params = new HashMap<String, String>();
            params.put("post_id", item.getId());
            params.put("user_id", user_id);
            Toast.makeText(activity, item.getId(), Toast.LENGTH_SHORT).show();
            Toast.makeText(activity, user_id, Toast.LENGTH_SHORT).show();
            // making fresh volley request and getting json
            CustomRequest jsonReq = new CustomRequest(Request.Method.POST,
                    URL,params , new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    VolleyLog.d(TAG, "Response: " + response.toString());
                    if (response != null) {

                        parseJsonFeed(response);


                    }
                }
            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG, "Error: " + error.getMessage());
                }
            });

            // Adding request to volley request queue
            AppController.getInstance().addToRequestQueue(jsonReq);



        }

    });



    comment.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {
            item = feedItems.get(position);
            Intent i = new Intent(activity, Comment.class);
            i.putExtra("user_id",item.getId());
            i.putExtra("name",item.getName());
            i.putExtra("image",item.getImge());
            i.putExtra("status",item.getStatus());
            i.putExtra("profile_img",item.getProfilePic());
            i.putExtra("time",item.getTimeStamp());
            i.putExtra("url",item.getUrl());
            i.putExtra("nbr_likes",item.getNbrLikes());
            i.putExtra("nbr_comments",item.getNbrComments());
            activity.startActivity(i);


        }


    });

    name.setText(item.getName());

   nbr_likes.setText(item.getNbrLikes()+ " Likes");
    nbr_comments.setText(item.getNbrComments() + " Comments");


    // Converting timestamp into x ago format
    CharSequence timeAgo = DateUtils.getRelativeTimeSpanString(
            Long.parseLong(item.getTimeStamp()),
            System.currentTimeMillis(), DateUtils.SECOND_IN_MILLIS);
    timestamp.setText(timeAgo);

    // Chcek for empty status message
    if (!TextUtils.isEmpty(item.getStatus())) {
        statusMsg.setText(item.getStatus());
        statusMsg.setVisibility(View.VISIBLE);
    } else {
        // status is empty, remove from view
        statusMsg.setVisibility(View.GONE);
    }

    // Checking for null feed url
    if (item.getUrl() != null) {
        url.setText(Html.fromHtml("<a href=\"" + item.getUrl() + "\">"
                + item.getUrl() + "</a> "));

        // Making url clickable
        url.setMovementMethod(LinkMovementMethod.getInstance());
        url.setVisibility(View.VISIBLE);
    } else {
        // url is null, remove from the view
        url.setVisibility(View.GONE);
    }

    // user profile pic
    profilePic.setImageUrl(item.getProfilePic(), imageLoader);

    // Feed image
    if (item.getImge() != null) {
        feedImageView.setImageUrl(item.getImge(), imageLoader);
        feedImageView.setVisibility(View.VISIBLE);
        feedImageView
                .setResponseObserver(new FeedImageView.ResponseObserver() {
                    @Override
                    public void onError() {
                    }

                    @Override
                    public void onSuccess() {
                    }
                });
    } else {
        feedImageView.setVisibility(View.GONE);
    }
    return convertView;
}


private void parseJsonFeed(JSONObject response) {
    int success;
    try {
        success = response.getInt(TAG_SUCCESS);
        if (success == 1) {
            notifyDataSetChanged();
        } else {
            Toast.makeText(activity, "erreur", Toast.LENGTH_SHORT).show();
        }


        //listAdapter.addAll(feedItems);
    } catch (JSONException e) {
        e.printStackTrace();
    }
}
package com.example.mahdi.chat;
导入android.app.Activity;
导入android.app.ProgressDialog;
导入android.content.Context;
导入android.content.Intent;
导入android.graphics.Color;
导入android.os.AsyncTask;
导入android.support.v4.app.Fragment;
导入android.text.Html;
导入android.text.TextUtils;
导入android.text.format.DateUtils;
导入android.text.method.LinkMovementMethod;
导入android.util.Log;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.BaseAdapter;
导入android.widget.Button;
导入android.widget.TextView;
导入android.widget.Toast;
导入com.android.volley.Request;
导入com.android.volley.Response;
导入com.android.volley.VolleyError;
导入com.android.volley.VolleyLog;
导入com.android.volley.toolbox.ImageLoader;
导入com.android.volley.toolbox.NetworkImageView;
导入org.apache.http.NameValuePair;
导入org.apache.http.message.BasicNameValuePair;
导入org.json.JSONException;
导入org.json.JSONObject;
导入org.w3c.dom.Text;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入java.util.Map;
导入circleview.CircleImageView;
公共类FeedListAdapter扩展了BaseAdapter{
私有静态最终字符串标记=FeedListAdapter.class.getSimpleName();
私人活动;
私人充气机;
私人物品清单;
JSONParser JSONParser=新的JSONParser();
专用字符串URL=”http://10.0.3.2/social/like.php";
私有字符串用户标识;
私人按钮式,评论式;
私有静态最终字符串标记_SUCCESS=“SUCCESS”;
饲料项目;
ImageLoader ImageLoader=AppController.getInstance().getImageLoader();
公共FeedListAdapter(活动、列表feedItems、字符串用户id){
这个。活动=活动;
此项。feedItems=feedItems;
this.user\u id=user\u id;
}
@凌驾
public int getCount(){
返回feedItems.size();
}
@凌驾
公共对象getItem(int位置){
返回feedItems.get(位置);
}
@凌驾
公共长getItemId(int位置){
返回位置;
}
公共无效刷新(列表新建列表){
feedItems.addAll(新列表);
this.notifyDataSetChanged();
}
公共列表getData(){
返回饲料项目;
}
@凌驾
公共视图getView(最终整数位置、视图转换视图、视图组父视图){
如果(充气器==null)
充气器=(LayoutFlater)父.getContext().getSystemService(Context.LAYOUT\u充气器\u服务);
if(convertView==null)
convertView=充气机。充气(R.layout.posts\u行,空);
如果(imageLoader==null)
imageLoader=AppController.getInstance().getImageLoader();
final TextView name=(TextView)convertView.findViewById(R.id.name);
TextView时间戳=(TextView)convertView
.findviewbyd(R.id.time);
TextView statusMsg=(TextView)convertView
.findViewById(R.id.status);
TextView url=(TextView)convertView.findViewById(R.id.url);
CircleImageView配置文件PIC=(CircleImageView)convertView
.findviewbyd(R.id.profile\u img);
FeedImageView FeedImageView=(FeedImageView)convertView
.findviewbyd(R.id.image);
TextView nbr_likes=(TextView)convertView.findViewById(R.id.nbr_likes);
TextView nbr_comments=(TextView)convertView.findViewById(R.id.nbr_comments);
项目=饲料项目。获取(位置);
like=(按钮)convertView.findViewById(R.id.like);
comment=(按钮)convertView.findViewById(R.id.comment);
like.setTag(位置);
like.setOnClickListener(新视图.OnClickListener()
{
@凌驾
公共void onClick(视图v){
int position=(整数)v.getTag();
喜欢.setBackgroundColor(颜色.黑色);
项目=饲料项目。获取(位置);
Map params=新的HashMap();
参数put(“post_id”,item.getId());
参数put(“用户id”,用户id);
Toast.makeText(活动,item.getId(),Toast.LENGTH_SHORT.show();
Toast.makeText(活动、用户id、Toast.LENGTH.SHORT).show();
//发出新的截击请求并获取json
CustomRequest jsonReq=新的CustomRequest(Request.Method.POST,
URL,参数,新响应。侦听器(){
@凌驾
公共void onResponse(JSONObject响应){
d(标记“Response:+Response.toString());
if(响应!=null){
parseJsonFeed(响应);
}
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
d(标记“Error:+Error.getMessage());
}
});
//将请求添加到截击请求队列
AppController.getInstance().addToRequestQueue(jsonReq);
}
});
comment.setOnClickListener(新视图.OnClickListener()
{
@凌驾
公共void onClick(视图v){
项目=饲料项目。获取(位置);
意图i=新意图(活动、注释、类);
i、 putExtra(“user_id”,item.getId());
i、 putExtra(“name”,item.getName());
i、 putExtra(“image”,item.getImge());
i、 putExtra(“状态”,item.getStatus());
i、 putExtra(“profile_img”,item.getProfilePic());
i、 putExtrap(“时间”,item.getTimeStamp());
i、 putExtra(“url”,item.getUrl());
i、 putExtra(“nbr_likes”,item.getNbrLikes());
i、 丁腈橡胶_
package com.example.mahdi.chat;


import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.os.AsyncTask;
import android.support.v4.app.Fragment;
import android.text.Html;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.method.LinkMovementMethod;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.VolleyLog;
import com.android.volley.toolbox.ImageLoader;
import com.android.volley.toolbox.NetworkImageView;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import org.w3c.dom.Text;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import circleview.CircleImageView;

public class FeedListAdapter extends BaseAdapter {

private static final String TAG = FeedListAdapter.class.getSimpleName();

private Activity activity;
private LayoutInflater inflater;
private List<FeedItem> feedItems;
JSONParser jsonParser = new JSONParser();
private String URL = "http://10.0.3.2/social/like.php";
private String user_id;
private Button like,comment;

private static final String TAG_SUCCESS = "success";
FeedItem item;
ImageLoader imageLoader = AppController.getInstance().getImageLoader();

public FeedListAdapter(Activity activity, List<FeedItem> feedItems, String user_id) {
    this.activity = activity;
    this.feedItems = feedItems;
    this.user_id = user_id;
}

@Override
public int getCount() {
    return feedItems.size();
}

@Override
public Object getItem(int location) {
    return feedItems.get(location);
}

@Override
public long getItemId(int position) {
    return position;
}

public void refresh(List<FeedItem> newlist) {
    feedItems.addAll(newlist);
    this.notifyDataSetChanged();
}
public List<FeedItem> getData() {
    return feedItems;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {

    if (inflater == null)
        inflater = (LayoutInflater)parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    if (convertView == null)
        convertView = inflater.inflate(R.layout.posts_row, null);

    if (imageLoader == null)
        imageLoader = AppController.getInstance().getImageLoader();

   final  TextView name = (TextView) convertView.findViewById(R.id.name);
    TextView timestamp = (TextView) convertView
            .findViewById(R.id.time);
    TextView statusMsg = (TextView) convertView
            .findViewById(R.id.status);
    TextView url = (TextView) convertView.findViewById(R.id.url);
    CircleImageView profilePic = (CircleImageView) convertView
            .findViewById(R.id.profile_img);
    FeedImageView feedImageView = (FeedImageView) convertView
            .findViewById(R.id.image);


    TextView nbr_likes = (TextView)convertView.findViewById(R.id.nbr_likes);
    TextView nbr_comments = (TextView)convertView.findViewById(R.id.nbr_comments);


    item = feedItems.get(position);




    like =(Button)convertView.findViewById(R.id.like);
    comment =(Button)convertView.findViewById(R.id.comment);



    like.setTag(position);

    like.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {

            int position = (Integer) v.getTag();

            like.setBackgroundColor(Color.BLACK);


            item = feedItems.get(position);
            Map<String, String> params = new HashMap<String, String>();
            params.put("post_id", item.getId());
            params.put("user_id", user_id);
            Toast.makeText(activity, item.getId(), Toast.LENGTH_SHORT).show();
            Toast.makeText(activity, user_id, Toast.LENGTH_SHORT).show();
            // making fresh volley request and getting json
            CustomRequest jsonReq = new CustomRequest(Request.Method.POST,
                    URL,params , new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    VolleyLog.d(TAG, "Response: " + response.toString());
                    if (response != null) {

                        parseJsonFeed(response);


                    }
                }
            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG, "Error: " + error.getMessage());
                }
            });

            // Adding request to volley request queue
            AppController.getInstance().addToRequestQueue(jsonReq);



        }

    });



    comment.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v) {
            item = feedItems.get(position);
            Intent i = new Intent(activity, Comment.class);
            i.putExtra("user_id",item.getId());
            i.putExtra("name",item.getName());
            i.putExtra("image",item.getImge());
            i.putExtra("status",item.getStatus());
            i.putExtra("profile_img",item.getProfilePic());
            i.putExtra("time",item.getTimeStamp());
            i.putExtra("url",item.getUrl());
            i.putExtra("nbr_likes",item.getNbrLikes());
            i.putExtra("nbr_comments",item.getNbrComments());
            activity.startActivity(i);


        }


    });

    name.setText(item.getName());

   nbr_likes.setText(item.getNbrLikes()+ " Likes");
    nbr_comments.setText(item.getNbrComments() + " Comments");


    // Converting timestamp into x ago format
    CharSequence timeAgo = DateUtils.getRelativeTimeSpanString(
            Long.parseLong(item.getTimeStamp()),
            System.currentTimeMillis(), DateUtils.SECOND_IN_MILLIS);
    timestamp.setText(timeAgo);

    // Chcek for empty status message
    if (!TextUtils.isEmpty(item.getStatus())) {
        statusMsg.setText(item.getStatus());
        statusMsg.setVisibility(View.VISIBLE);
    } else {
        // status is empty, remove from view
        statusMsg.setVisibility(View.GONE);
    }

    // Checking for null feed url
    if (item.getUrl() != null) {
        url.setText(Html.fromHtml("<a href=\"" + item.getUrl() + "\">"
                + item.getUrl() + "</a> "));

        // Making url clickable
        url.setMovementMethod(LinkMovementMethod.getInstance());
        url.setVisibility(View.VISIBLE);
    } else {
        // url is null, remove from the view
        url.setVisibility(View.GONE);
    }

    // user profile pic
    profilePic.setImageUrl(item.getProfilePic(), imageLoader);

    // Feed image
    if (item.getImge() != null) {
        feedImageView.setImageUrl(item.getImge(), imageLoader);
        feedImageView.setVisibility(View.VISIBLE);
        feedImageView
                .setResponseObserver(new FeedImageView.ResponseObserver() {
                    @Override
                    public void onError() {
                    }

                    @Override
                    public void onSuccess() {
                    }
                });
    } else {
        feedImageView.setVisibility(View.GONE);
    }
    return convertView;
}


private void parseJsonFeed(JSONObject response) {
    int success;
    try {
        success = response.getInt(TAG_SUCCESS);
        if (success == 1) {
            notifyDataSetChanged();
        } else {
            Toast.makeText(activity, "erreur", Toast.LENGTH_SHORT).show();
        }


        //listAdapter.addAll(feedItems);
    } catch (JSONException e) {
        e.printStackTrace();
    }
}
likebutton.setOnClickListener(likeButtonClickListener);
private OnClickListener likeButtonClickListener = new OnClickListener() {
    @Override
    public void onClick(View v) {
        View parentRow = (View) v.getParent();
        ListView listView = (ListView) parentRow.getParent();
        final int position = listView.getPositionForView(parentRow);
    }
};
likebutton.setTag(position);
likebutton.setOnClickListener(likeButtonClickListener);
private OnClickListener likeButtonClickListener = new OnClickListener() {
    @Override
    public void onClick(View v) {
        int position = (Integer) v.getTag();
    }
};
private int NUM_OF_ITEMS;
private final boolean[] mHighlightedPositions = new boolean[NUM_OF_ITEMS];
...
 if(mHighlightedPositions[position]) {
        holder.likebutton.setBackgroundResource(R.drawable.icon_yellow_star_large);
    }else {
        holder.likebutton.setBackgroundResource(0);
    }
...
holder = new ViewHolder();
int position = (Integer)view.getTag();
@Override
public void onClick(View view) {
    int position = (Integer)view.getTag(); // gets current position
    Log.d(TAG, "Button row pos click: " + position);
    ...
      ...
    if(mHighlightedPositions[position]) { // current position is given
        button.setBackgroundResource(0);
        mHighlightedPositions[position] = false;
    }else {
        button.setBackgroundResource(R.drawable.icon_yellow_star_large);
        mHighlightedPositions[position] = true;
    }
}