微信朋友圈评论点赞-android 类似微信朋友圈点赞,评论功能怎么实现?

问题描述

android 类似微信朋友圈点赞,评论功能怎么实现?

@Override
public int getCount() {
return 5;
}

@Override
public Object getItem(int position) {
    return null;
}

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

@Override
public int getItemViewType(int position) {
    // TODO Auto-generated method stub
    switch (position) {
    case 0:
        return TYPE_1;
    case 1:
        return TYPE_2;
    case 2:
        return TYPE_3;

    default:
        return 0;
    }
}

@Override
public int getViewTypeCount() {
    // TODO Auto-generated method stub
    return 3;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    holder1 = null;
    holder2 = null;
    holder3 = null;
    int type = getItemViewType(position);
    if (convertView == null) {
        mInflater = LayoutInflater.from(mContext);
        switch (type) {
        case TYPE_1:
            convertView = mInflater.inflate(R.layout.lv_find_item, null);
            holder1 = new Holder1();
            holder1.gridView = (GridView) convertView
                    .findViewById(R.id.gridView_find);
            holder1.btn_show_feed = (ImageView) convertView
                    .findViewById(R.id.btn_show_feed);
            holder1.tv_share_names = (TextView) convertView
                    .findViewById(R.id.tv_share_names);
            holder1.tv_share = (TextView) convertView
                    .findViewById(R.id.tv_share);
            holder1.tv_add_friend = (TextView) convertView
                    .findViewById(R.id.tv_add_friend);

            convertView.setTag(holder1);
            break;
        case TYPE_2:
            convertView = mInflater.inflate(R.layout.lv_find_item2, null);
            holder2 = new Holder2();
            holder2.btn_show_feed2 = (ImageView) convertView
                    .findViewById(R.id.btn_show_feed2);
            holder2.tv_share_names2 = (TextView) convertView
                    .findViewById(R.id.tv_share_names2);
            holder2.tv_share2 = (TextView) convertView
                    .findViewById(R.id.tv_share2);
            holder2.tv_add_friend2 = (TextView) convertView
                    .findViewById(R.id.tv_add_friend2);

            convertView.setTag(holder2);
            break;
        case TYPE_3:
            convertView = mInflater.inflate(R.layout.lv_find_item3, null);
            holder3 = new Holder3();
            holder3.gridView3 = (GridView) convertView
                    .findViewById(R.id.gridView3);
            holder3.btn_show_feed3 = (ImageView) convertView
                    .findViewById(R.id.btn_show_feed3);
            holder3.tv_share_names3 = (TextView) convertView
                    .findViewById(R.id.tv_share_names3);
            holder3.tv_share3 = (TextView) convertView
                    .findViewById(R.id.tv_share3);
            holder3.tv_add_friend3 = (TextView) convertView
                    .findViewById(R.id.tv_add_friend3);
            holder3.tv_crowdfunding_record3 = (TextView) convertView
                    .findViewById(R.id.tv_crowdfunding_record3);

            convertView.setTag(holder3);
            break;

        default:
            break;

        }
    } else {
        switch (type) {
        case TYPE_1:
            holder1 = (Holder1) convertView.getTag();
            break;
        case TYPE_2:
            holder2 = (Holder2) convertView.getTag();
            break;
        case TYPE_3:
            holder3 = (Holder3) convertView.getTag();
            break;
        }
    }

    // 设置资源
    switch (type) {
    case TYPE_1:
        holder1.gridView.setAdapter(new HomeBuyGridAdapter(mContext,
                images_buy));
        holder1.btn_show_feed.setOnClickListener(new PopClicListener(type));
        holder1.tv_share.setOnClickListener(new MyShareListener());
        holder1.tv_add_friend.setOnClickListener(new MyAddListener());

        break;
    case TYPE_2:
        holder2.btn_show_feed2
                .setOnClickListener(new PopClicListener(type));
        holder2.tv_share2.setOnClickListener(new MyShareListener());
        holder2.tv_add_friend2.setOnClickListener(new MyAddListener());
        break;
    case TYPE_3:
        holder3.gridView3.setAdapter(new HomeBuyGridAdapter(mContext,
                images_buy));
        holder3.btn_show_feed3
                .setOnClickListener(new PopClicListener(type));
        holder3.tv_share3.setOnClickListener(new MyShareListener());
        holder3.tv_add_friend3.setOnClickListener(new MyAddListener());
        holder3.tv_crowdfunding_record3
                .setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        getUpPop();
                        popCrowdfunding.showAtLocation(v, Gravity.CENTER,
                                0, 0);

                    }
                });

        break;
    }

    return convertView;
}

class Holder1 {
    GridView gridView;
    ImageView btn_show_feed;
    TextView tv_add_friend;
    TextView tv_share;
    TextView tv_share_names;
    TextView tv_comment_name;
    TextView tv_comment_content;
    LinearLayout ll_comment;
    LinearLayout ll_reply;
}

class Holder2 {
    ImageView btn_show_feed2;
    TextView tv_add_friend2;
    TextView tv_share2;
    TextView tv_share_names2;
    TextView tv_comment_name2;
    TextView tv_comment_content2;
    LinearLayout ll_comment2;
    LinearLayout ll_reply2;
}

class Holder3 {
    GridView gridView3;
    ImageView btn_show_feed3;
    TextView tv_add_friend3;
    TextView tv_share3;
    TextView tv_crowdfunding_record3;
    TextView tv_share_names3;
    TextView tv_comment_name3;
    TextView tv_comment_content3;
    LinearLayout ll_comment3;
    LinearLayout ll_reply3;
}

加载三种不同布局是这样写的吧?有更好的方式吗?
我现在做的一个类似的功能,listview里面加载了三种不同的布局,每种布局都有点赞,评论功能。都是点击按钮弹出一个popupwindow,里面有点赞,评论,按钮。
怎么在点赞的时候能让昵称显示在listview中呢?且显示在对应的listview的item中(都是假数据)。

解决方案

楼主你实现了吗.我最近也在做这个,也是错位,方便的话沟通一下吧1156924412 可以把Demo发一下吗谢了.guochenchn@163.com

解决方案二:

数据都在你绑定的数据源中,你在getview中写道item中就行了,获取的话,得到当前item的position,然后根据这个索引去数据源中读取

解决方案三:

不太懂,有哪位可以详细的说下吗?谢谢!

解决方案四:

获取的话,得到当前item的position,然后根据这个索引去数据源中读取

解决方案五:

获取的话,得到当前item的position,然后根据这个索引去数据源中读取

解决方案六:

有个问题搞不明白,那个显示点赞信息图标接着文字,文字还会错位显示。这个怎么做。

解决方案七:

有没有具体的实现哦?

解决方案八:

求发Demo 1098769776@qq.com

时间: 2025-01-01 23:39:13

微信朋友圈评论点赞-android 类似微信朋友圈点赞,评论功能怎么实现?的相关文章

Android 类似微信登录输入框效果

微信的登录输入框效果如下 进入自动打开自动启动软键盘 点击下一个输入框,下划线颜色改变 怎么实现这样的效果呢,其实非常简单! 简单的布局我就不说了,直接上干货. 1.实现进入自动弹出软键盘,在根文件中的Activity中设置 windowSoftInputMode 属性为 stateVisible|adjustResize 例如 <activity android:name=".SetLoginPasswordActivity" android:windowSoftInputMo

评论回复布局-类似微信朋友圈的评论布局问题

问题描述 类似微信朋友圈的评论布局问题 要实现类似微信朋友圈的评论回复功能,目前通过嵌套listview已经基本实现了布局的显示功能,现在要实现点击某条评论,弹出输入框和输入法,且输入框的位置正好在点击的评论的正下方,毛事要动态的移动listview里面item的位置.看了下微信朋友圈和手机QQ的空间都是如此实现的,想问问,有没有有具体点的思路. 目前想到的难点如下: 1.listview里面的刚好占满一个屏幕,点击最后的一个item,如何将该item提升到输入法和输入框的上面,listview

android 类似微信的摇一摇功能实现思路及代码_Android

复制代码 代码如下: package com.eboy.testyaoyiyao; import java.text.SimpleDateFormat; import java.util.Date; import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import

android 类似微信的摇一摇功能实现思路及代码

复制代码 代码如下: package com.eboy.testyaoyiyao; import java.text.SimpleDateFormat; import java.util.Date; import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import

Android版微信5.0测试包放出

摘要: 今天iOS版微信5.0 抢先发布 ,霎时间掀起全民"打飞机"的热潮.无奈的是Android用户只能眼巴巴看着iOS用户打飞机,自己无飞机可打.今晚微信团队也发布了Android版微信5.0测试版( 点 今天iOS版微信5.0抢先发布,霎时间掀起全民"打飞机"的热潮.无奈的是Android用户只能眼巴巴看着iOS用户打飞机,自己无飞机可打.今晚微信团队也发布了Android版微信5.0测试版(点击下载).不过仅有上次申请过内测的用户才有权限使用,没有申请内测的

Android 仿微信朋友圈点赞和评论弹出框功能_Android

贡献/下载源码:https://github.com/mmlovesyy/PopupWindowDemo 本文简单模仿微信朋友圈的点赞和评论弹出框,布局等细节请忽略,着重实现弹出框.发评论,及弹出位置的控制. 1. 微信弹出框 微信朋友圈的点赞和评论功能,有2个组成部分: 点击左下角的"更多"按钮,弹出对话框: 点击评论,弹出输入框,添加评论并在页面中实时显示:   微信朋友圈点赞和评论功能 2. 实际效果 本文将建一个 ListView,在其 Item 中简单模仿微信的布局,然后着重

listview-ListView下拉刷新得到新的几条数据,保持原来的查看全文和收起状态类似微信朋友圈。

问题描述 ListView下拉刷新得到新的几条数据,保持原来的查看全文和收起状态类似微信朋友圈. 如题.比如我的ListView上有20条新闻,我下拉刷新了,获得到新的2条新闻,这时我把新闻插到ListView的最前面.那么问题来了..我原来的20条新闻有的项的内容处于"查看全文"状态,有的处于"收起"状态.那么我怎么保持那20条新闻的展开或收起状态不变呢? 解决方案 在adapter绑定List中的实体类加一个属性,来判断新闻是处于查看全文或收起状态,在getVi

(android)微信分享到朋友圈的编辑界面可以自定义吗?

问题描述 (android)微信分享到朋友圈的编辑界面可以自定义吗? 微信分享到朋友圈每次都跳一个编辑界面,这个界面可以自定义吗? 解决方案 android微信朋友圈分享 解决方案二: 好像不可以,没那么开放的 解决方案三: 不可以,那个界面是微信自带的

Android仿微信发朋友圈浏览图片效果_Android

先看一下效果吧: 下面就来说一下具体怎么实现的: 实现思路 1.首先我们要获取数据源,数据源就是我们的每条说说(包括姓名.标题.图片数组) 2.自定义适配器(ListView嵌套着GridView) 3.图片点击浏览图片(Fragment+ViewPager) 具体实现 1.初始化数据源,设置适配器,看一下代码: public class MyActivity extends Activity { /*图片显示列表*/ private ListView listView; /*图片URL数组*/