类似QQ、微信、微博的WeiBoLayout

类似QQ、微信、微博的WeiBoLayout

Posted by 哲匠 on June 6, 2016

Android 类似QQ、微信、微博的WeiBoLayout


仿微博、微信QQ,包含展示动态(Feed)图片,不同数量不同布局的GridView和识别包含超链接、#字话题、@人的文本效果。

WeiBoLayout中的FeedGridView是根据显示子View的个数,使其填充满屏幕宽度的View,WeiBoLayout可识别文本中的超链接、#字话题、@人,适用于社交软件Feed的展示。

FeedGridView XML:

1
2
3
4
5
6
7
8
9
10
11
<com.zheblog.weibogridview.view.FeedGridView
        android:id="@+id/gv_photo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/zhe_dp10"
        android:listSelector="@color/zhe_transparent"
        android:scrollbars="none"
        android:stretchMode="none"
        app:hSpacing="@dimen/zhe_dp10"
        app:pSpacing="@dimen/zhe_dp10"
        app:vSpacing="@dimen/zhe_dp10" />
1
2
3
hSpacing是水平间距
vSpacing是垂直间距
pSpacing是GridView两边距父控件的间距,便于动态计算每个item的宽度

FeedGridView 使用代码:

1
gvPhoto.setPhotoAdapter(item.getPhotoModels());

识别文本中的超链接、#字话题、@人的文本

1
2
tvContent.setText(TimeLineUtility.convertNormalStringToSpannableString(item.getContent(), TimeLineUtility.TimeLineStatus.FEED));
tvContent.setOnTouchListener(new ClickableTextViewMentionLinkOnTouchListener());
1
2
3
4
5
//LINK单一识别超链接
//FEED识别超链接、#字话题、@人
public enum TimeLineStatus {
        LINK, FEED
    }

动态效果图:

GitHub代码下载

最后

下载代码请移步GitHub,如果对您有帮助请Star,有问题随时联系我,谢谢.

关于我

QQ交流群:496946393

邮箱: nh_zhe@163.com

简书

个人博客