如何添加喜欢和不喜欢的条件按钮点击android



我想喜欢兴趣1,不喜欢兴趣0

案例R.id.floatingActionButton:

             if() {floatingActionButton.setImageDrawable(getResources().getDrawable(R.drawable.hearts));
                addToInterested(postId, 1);
            }else {
                floatingActionButton.setImageDrawable(getResources().getDrawable(R.drawable.ic_action_fav));
                addToInterested(postId, 0);
            }
            break;

在方法内private void addToInterested(String postId, int interest) {

    try {
        PostLikeTask postLikeTask = new PostLikeTask(this, responseListener);
        JSONObject params = new JSONObject();
        params.put("userId", authKey);
        params.put("postId", postId);
        params.put("interest", interest);
        postLikeTask.likePost(params);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
ResponseListener responseListener = new ResponseListener() {
    @Override
    public void onError(String errorMessage) {
        Toast.makeText(getApplicationContext(), errorMessage.toString(), Toast.LENGTH_LONG).show();
    }
    @Override
    public void onSuccess(String message) {
        Toast.makeText(getApplicationContext(), message.toString(), Toast.LENGTH_LONG).show();
    }
};

}

您可以使用全局curInterest来保存当前感兴趣的状态。

或者检查FloatingButton的状态:

Drawable myDrawable = floatingButton.getDrawable();
if(floatingButton.getDrawable()==getResources().getDrawable(R.drawable. hearts)){
    //Liked
}

但是,我看到floatingButton你改变背景,不要关心addToInterested状态成功或错误,当你的请求太快或有错误时,它可以使错误状态

最新更新