混淆配置:同名类处理
This commit is contained in:
@@ -28,16 +28,6 @@ public class InviteFriendListAdapter extends BaseQuickAdapter<PublicChatHallFrie
|
|||||||
this.context = context;
|
this.context = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
private OnItemClickListener onItemClickListener;
|
|
||||||
|
|
||||||
public interface OnItemClickListener {
|
|
||||||
void sendListener(UserInfo attentionInfo);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRylListener(OnItemClickListener onClickListener) {
|
|
||||||
onItemClickListener = onClickListener;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void convert(BaseViewHolder helper, PublicChatHallFriendInfo pchFriendInfo) {
|
protected void convert(BaseViewHolder helper, PublicChatHallFriendInfo pchFriendInfo) {
|
||||||
if (pchFriendInfo == null) return;
|
if (pchFriendInfo == null) return;
|
||||||
|
@@ -18,7 +18,7 @@ public abstract class CommonAdapter<T, K extends BaseViewHolder> extends Recycle
|
|||||||
|
|
||||||
private List<T> mData;
|
private List<T> mData;
|
||||||
|
|
||||||
private OnItemClickListener<T, K> mOnItemClickListener;
|
private OnItemParentClickListener<T, K> mOnItemClickListener;
|
||||||
|
|
||||||
private OnItemChildClickListener<T, K> mOnItemChildClickListener;
|
private OnItemChildClickListener<T, K> mOnItemChildClickListener;
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ public abstract class CommonAdapter<T, K extends BaseViewHolder> extends Recycle
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public CommonAdapter<T, K> setOnItemClickListener(OnItemClickListener<T, K> onItemClickListener) {
|
public CommonAdapter<T, K> setOnItemClickListener(OnItemParentClickListener<T, K> onItemClickListener) {
|
||||||
this.mOnItemClickListener = onItemClickListener;
|
this.mOnItemClickListener = onItemClickListener;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
@@ -4,6 +4,6 @@ package com.nnbc123.app.base.list;
|
|||||||
* Created by lvzebiao on 2018/12/18.
|
* Created by lvzebiao on 2018/12/18.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public interface OnItemClickListener<T, K extends BaseViewHolder> {
|
public interface OnItemParentClickListener<T, K extends BaseViewHolder> {
|
||||||
void onItemClick(K holder, T item, int position);
|
void onItemClick(K holder, T item, int position);
|
||||||
}
|
}
|
@@ -16,8 +16,7 @@ import com.nnbc123.core.utils.ext.toast
|
|||||||
import org.greenrobot.eventbus.EventBus
|
import org.greenrobot.eventbus.EventBus
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
class SkillDataDelegate(private val skillView: SkillCardView, private val activity: BaseActivity) :
|
class SkillDataDelegate(private val skillView: SkillCardView, private val activity: BaseActivity) : ItemEventListener {
|
||||||
ItemEventListener {
|
|
||||||
@SuppressLint("CheckResult")
|
@SuppressLint("CheckResult")
|
||||||
override fun onItemClick(item: SkillItem) {
|
override fun onItemClick(item: SkillItem) {
|
||||||
onItemSelection(item)
|
onItemSelection(item)
|
||||||
|
@@ -6,7 +6,7 @@ import java.io.File
|
|||||||
* Created by Max on 2024/1/17 16:45
|
* Created by Max on 2024/1/17 16:45
|
||||||
* Desc:
|
* Desc:
|
||||||
**/
|
**/
|
||||||
class ItemEventListener {
|
interface ItemEventListener {
|
||||||
fun onItemClick(item: SkillItem) {}
|
fun onItemClick(item: SkillItem) {}
|
||||||
fun onRecordSuccess(audioFile: File?, duration: Int) {}
|
fun onRecordSuccess(audioFile: File?, duration: Int) {}
|
||||||
fun onDeleteRecordClick() {}
|
fun onDeleteRecordClick() {}
|
||||||
|
@@ -4,7 +4,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
|
|
||||||
import com.netease.nim.uikit.business.recent.RecentContactsCallback;
|
import com.netease.nim.uikit.business.recent.RecentContactsCallback;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
||||||
import com.nnbc123.app.R;
|
import com.nnbc123.app.R;
|
||||||
@@ -17,7 +17,7 @@ import java.util.List;
|
|||||||
* @author huangjun
|
* @author huangjun
|
||||||
* @date 2016/12/11
|
* @date 2016/12/11
|
||||||
*/
|
*/
|
||||||
public class RecentContactAdapter extends BaseMultiItemQuickAdapter<RecentContact, BaseViewHolder> {
|
public class RecentContactAdapter extends BaseMultiItemQuickAdapter<RecentContact, NimBaseViewHolder> {
|
||||||
|
|
||||||
interface ViewType {
|
interface ViewType {
|
||||||
int VIEW_TYPE_COMMON = 1;
|
int VIEW_TYPE_COMMON = 1;
|
||||||
|
@@ -14,7 +14,7 @@ import com.netease.nim.uikit.common.ui.draggablebubbles.BubbleMessageTouchListen
|
|||||||
import com.netease.nim.uikit.common.ui.draggablebubbles.MessageBubbleView;
|
import com.netease.nim.uikit.common.ui.draggablebubbles.MessageBubbleView;
|
||||||
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
||||||
import com.nnbc123.app.R;
|
import com.nnbc123.app.R;
|
||||||
@@ -49,7 +49,7 @@ public class CommonRecentViewHolder extends RecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void inflate(BaseViewHolder holder, final RecentContact recent) {
|
public void inflate(NimBaseViewHolder holder, final RecentContact recent) {
|
||||||
this.imgHead = holder.getView(R.id.img_head);
|
this.imgHead = holder.getView(R.id.img_head);
|
||||||
this.tvNickname = holder.getView(R.id.tv_nickname);
|
this.tvNickname = holder.getView(R.id.tv_nickname);
|
||||||
this.tvMessage = holder.getView(R.id.tv_message);
|
this.tvMessage = holder.getView(R.id.tv_message);
|
||||||
@@ -88,7 +88,7 @@ public class CommonRecentViewHolder extends RecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void refresh(BaseViewHolder holder, RecentContact recent, final int position) {
|
public void refresh(NimBaseViewHolder holder, RecentContact recent, final int position) {
|
||||||
|
|
||||||
|
|
||||||
// unread count animation
|
// unread count animation
|
||||||
|
@@ -15,7 +15,7 @@ import com.netease.nim.uikit.business.uinfo.UserInfoHelper;
|
|||||||
import com.netease.nim.uikit.common.ui.draggablebubbles.BubbleView;
|
import com.netease.nim.uikit.common.ui.draggablebubbles.BubbleView;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
||||||
import com.netease.nim.uikit.impl.cache.TeamDataCache;
|
import com.netease.nim.uikit.impl.cache.TeamDataCache;
|
||||||
@@ -28,7 +28,7 @@ import com.nnbc123.app.ui.im.recent.RecentContactsFragment;
|
|||||||
import com.nnbc123.app.ui.im.recent.adapter.RecentContactAdapter;
|
import com.nnbc123.app.ui.im.recent.adapter.RecentContactAdapter;
|
||||||
import com.nnbc123.core.helper.ImHelperUtils;
|
import com.nnbc123.core.helper.ImHelperUtils;
|
||||||
|
|
||||||
public abstract class RecentViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseViewHolder, RecentContact> {
|
public abstract class RecentViewHolder extends RecyclerViewHolder<BaseQuickAdapter, NimBaseViewHolder, RecentContact> {
|
||||||
|
|
||||||
public RecentViewHolder(BaseQuickAdapter adapter) {
|
public RecentViewHolder(BaseQuickAdapter adapter) {
|
||||||
super(adapter);
|
super(adapter);
|
||||||
@@ -66,17 +66,17 @@ public abstract class RecentViewHolder extends RecyclerViewHolder<BaseQuickAdapt
|
|||||||
protected abstract String getContent(RecentContact recent);
|
protected abstract String getContent(RecentContact recent);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, RecentContact data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, RecentContact data, int position, boolean isScrolling) {
|
||||||
inflate(holder, data);
|
inflate(holder, data);
|
||||||
refresh(holder, data, position);
|
refresh(holder, data, position);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected abstract void inflate(BaseViewHolder holder, RecentContact data);
|
protected abstract void inflate(NimBaseViewHolder holder, RecentContact data);
|
||||||
|
|
||||||
protected abstract void refresh(BaseViewHolder holder, RecentContact data, int position);
|
protected abstract void refresh(NimBaseViewHolder holder, RecentContact data, int position);
|
||||||
|
|
||||||
|
|
||||||
protected void updateBackground(BaseViewHolder holder, RecentContact recent, int position) {
|
protected void updateBackground(NimBaseViewHolder holder, RecentContact recent, int position) {
|
||||||
if ((recent.getTag() & RecentContactsFragment.RECENT_TAG_STICKY) == 0) {
|
if ((recent.getTag() & RecentContactsFragment.RECENT_TAG_STICKY) == 0) {
|
||||||
holder.getConvertView().setBackgroundResource(R.drawable.nim_recent_contact_sticky_selecter);
|
holder.getConvertView().setBackgroundResource(R.drawable.nim_recent_contact_sticky_selecter);
|
||||||
} else {
|
} else {
|
||||||
@@ -107,7 +107,7 @@ public abstract class RecentViewHolder extends RecyclerViewHolder<BaseQuickAdapt
|
|||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateMsgLabel(BaseViewHolder holder, RecentContact recent) {
|
protected void updateMsgLabel(NimBaseViewHolder holder, RecentContact recent) {
|
||||||
// 显示消息具体内容
|
// 显示消息具体内容
|
||||||
MoonUtil.identifyRecentVHFaceExpressionAndTags(holder.getContext(), tvMessage, getContent(recent), -1, 0.45f);
|
MoonUtil.identifyRecentVHFaceExpressionAndTags(holder.getContext(), tvMessage, getContent(recent), -1, 0.45f);
|
||||||
MsgStatusEnum status = recent.getMsgStatus();
|
MsgStatusEnum status = recent.getMsgStatus();
|
||||||
|
@@ -14,7 +14,7 @@ import com.netease.nim.uikit.common.ui.draggablebubbles.BubbleMessageTouchListen
|
|||||||
import com.netease.nim.uikit.common.ui.draggablebubbles.MessageBubbleView;
|
import com.netease.nim.uikit.common.ui.draggablebubbles.MessageBubbleView;
|
||||||
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.NIMClient;
|
import com.netease.nimlib.sdk.NIMClient;
|
||||||
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
|
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
|
||||||
import com.netease.nimlib.sdk.msg.attachment.NotificationAttachment;
|
import com.netease.nimlib.sdk.msg.attachment.NotificationAttachment;
|
||||||
@@ -41,7 +41,7 @@ public class TeamRecentViewHolder extends RecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void inflate(BaseViewHolder holder, final RecentContact recent) {
|
public void inflate(NimBaseViewHolder holder, final RecentContact recent) {
|
||||||
this.imgHead = holder.getView(R.id.img_head);
|
this.imgHead = holder.getView(R.id.img_head);
|
||||||
this.tvNickname = holder.getView(R.id.tv_nickname);
|
this.tvNickname = holder.getView(R.id.tv_nickname);
|
||||||
this.tvMessage = holder.getView(R.id.tv_message);
|
this.tvMessage = holder.getView(R.id.tv_message);
|
||||||
@@ -96,7 +96,7 @@ public class TeamRecentViewHolder extends RecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void refresh(BaseViewHolder holder, RecentContact recent, final int position) {
|
public void refresh(NimBaseViewHolder holder, RecentContact recent, final int position) {
|
||||||
|
|
||||||
// unread count animation
|
// unread count animation
|
||||||
boolean shouldBoom = lastUnreadCount > 0 && recent.getUnreadCount() == 0; // 未读数从N->0执行爆裂动画;
|
boolean shouldBoom = lastUnreadCount > 0 && recent.getUnreadCount() == 0; // 未读数从N->0执行爆裂动画;
|
||||||
|
@@ -21,7 +21,7 @@ public class HiPraise implements IPraise {
|
|||||||
final int maxDuration = 2500;
|
final int maxDuration = 2500;
|
||||||
final int minDuration = 2000;
|
final int minDuration = 2000;
|
||||||
int minDelayAlphaTime = minDuration / 4;
|
int minDelayAlphaTime = minDuration / 4;
|
||||||
duration = Utils.rondomRange(maxDuration, minDuration);
|
duration = PraiseUtils.rondomRange(maxDuration, minDuration);
|
||||||
delayAplhaTime = new Random().nextInt((int) duration)
|
delayAplhaTime = new Random().nextInt((int) duration)
|
||||||
% (duration - minDelayAlphaTime + 1) + minDelayAlphaTime;
|
% (duration - minDelayAlphaTime + 1) + minDelayAlphaTime;
|
||||||
}
|
}
|
||||||
|
@@ -2,10 +2,10 @@ package com.nnbc123.app.ui.praise;
|
|||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
public class Utils {
|
public class PraiseUtils {
|
||||||
private static final Random RANDOM = new Random();
|
private static final Random RANDOM = new Random();
|
||||||
|
|
||||||
private Utils() {
|
private PraiseUtils() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int rondomRange(int max, int min) {
|
public static int rondomRange(int max, int min) {
|
@@ -1,114 +0,0 @@
|
|||||||
package com.nnbc123.app.ui.widget.recyclerview.decoration;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.content.res.TypedArray;
|
|
||||||
import android.graphics.Canvas;
|
|
||||||
import android.graphics.Rect;
|
|
||||||
import android.graphics.drawable.Drawable;
|
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
|
||||||
import android.view.View;
|
|
||||||
|
|
||||||
import io.reactivex.annotations.NonNull;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Created by hzchenkang on 2016/12/2.
|
|
||||||
*/
|
|
||||||
|
|
||||||
public class DividerItemDecoration extends RecyclerView.ItemDecoration {
|
|
||||||
private static final int[] ATTRS = new int[]{
|
|
||||||
android.R.attr.listDivider
|
|
||||||
};
|
|
||||||
|
|
||||||
public static final int HORIZONTAL_LIST = LinearLayoutManager.HORIZONTAL;
|
|
||||||
|
|
||||||
public static final int VERTICAL_LIST = LinearLayoutManager.VERTICAL;
|
|
||||||
|
|
||||||
private Drawable mDivider;
|
|
||||||
|
|
||||||
private int mOrientation;
|
|
||||||
|
|
||||||
public DividerItemDecoration(Context context, int orientation) {
|
|
||||||
final TypedArray a = context.obtainStyledAttributes(ATTRS);
|
|
||||||
mDivider = a.getDrawable(0);
|
|
||||||
a.recycle();
|
|
||||||
setOrientation(orientation);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setOrientation(int orientation) {
|
|
||||||
if (orientation != HORIZONTAL_LIST && orientation != VERTICAL_LIST) {
|
|
||||||
throw new IllegalArgumentException("invalid orientation");
|
|
||||||
}
|
|
||||||
mOrientation = orientation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDrawable(@NonNull Drawable mDivider) {
|
|
||||||
this.mDivider = mDivider;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDraw(Canvas c, RecyclerView parent) {
|
|
||||||
|
|
||||||
if (mOrientation == VERTICAL_LIST) {
|
|
||||||
drawVertical(c, parent);
|
|
||||||
} else {
|
|
||||||
drawHorizontal(c, parent);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
protected boolean needDrawDecoration(RecyclerView parent, int position) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void drawVertical(Canvas c, RecyclerView parent) {
|
|
||||||
final int left = parent.getPaddingLeft();
|
|
||||||
final int right = parent.getWidth() - parent.getPaddingRight();
|
|
||||||
|
|
||||||
final int childCount = parent.getChildCount();
|
|
||||||
for (int i = 0; i < childCount; i++) {
|
|
||||||
if (!needDrawDecoration(parent, i)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
final View child = parent.getChildAt(i);
|
|
||||||
RecyclerView v = new RecyclerView(parent.getContext());
|
|
||||||
final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child
|
|
||||||
.getLayoutParams();
|
|
||||||
final int top = child.getBottom() + params.bottomMargin;
|
|
||||||
final int bottom = top + mDivider.getIntrinsicHeight();
|
|
||||||
mDivider.setBounds(left, top, right, bottom);
|
|
||||||
mDivider.draw(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void drawHorizontal(Canvas c, RecyclerView parent) {
|
|
||||||
final int top = parent.getPaddingTop();
|
|
||||||
final int bottom = parent.getHeight() - parent.getPaddingBottom();
|
|
||||||
|
|
||||||
final int childCount = parent.getChildCount();
|
|
||||||
for (int i = 0; i < childCount; i++) {
|
|
||||||
if (!needDrawDecoration(parent, i)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
final View child = parent.getChildAt(i);
|
|
||||||
final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child
|
|
||||||
.getLayoutParams();
|
|
||||||
final int left = child.getRight() + params.rightMargin;
|
|
||||||
final int right = left + mDivider.getIntrinsicHeight();
|
|
||||||
mDivider.setBounds(left, top, right, bottom);
|
|
||||||
mDivider.draw(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void getItemOffsets(Rect outRect, int itemPosition, RecyclerView parent) {
|
|
||||||
if (!needDrawDecoration(parent, itemPosition)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (mOrientation == VERTICAL_LIST) {
|
|
||||||
outRect.set(0, 0, 0, mDivider.getIntrinsicHeight());
|
|
||||||
} else {
|
|
||||||
outRect.set(0, 0, mDivider.getIntrinsicWidth(), 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -3,6 +3,6 @@ package com.nnbc123.app.ui.widget.rollviewpager;
|
|||||||
/**
|
/**
|
||||||
* Created by zhuchenxi on 16/8/4.
|
* Created by zhuchenxi on 16/8/4.
|
||||||
*/
|
*/
|
||||||
public interface OnItemClickListener {
|
public interface OnRollViewItemClickListener {
|
||||||
void onItemClick(int position);
|
void onItemClick(int position);
|
||||||
}
|
}
|
@@ -37,7 +37,7 @@ public class RollPagerView extends RelativeLayout implements OnPageChangeListene
|
|||||||
|
|
||||||
private ViewPager mViewPager;
|
private ViewPager mViewPager;
|
||||||
private PagerAdapter mAdapter;
|
private PagerAdapter mAdapter;
|
||||||
private OnItemClickListener mOnItemClickListener;
|
private OnRollViewItemClickListener mOnItemClickListener;
|
||||||
private GestureDetector mGestureDetector;
|
private GestureDetector mGestureDetector;
|
||||||
|
|
||||||
private long mRecentTouchTime;
|
private long mRecentTouchTime;
|
||||||
@@ -310,7 +310,7 @@ public class RollPagerView extends RelativeLayout implements OnPageChangeListene
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void setOnItemClickListener(OnItemClickListener listener) {
|
public void setOnItemClickListener(OnRollViewItemClickListener listener) {
|
||||||
this.mOnItemClickListener = listener;
|
this.mOnItemClickListener = listener;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -9,7 +9,7 @@ import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage;
|
|||||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||||
import com.nnbc123.app.R;
|
import com.nnbc123.app.R;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseViewHolder;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMsgViewHolder;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderBase;
|
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderBase;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderFactory;
|
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderFactory;
|
||||||
import com.nnbc123.core.public_chat_hall.bean.PublicChatHallMessage;
|
import com.nnbc123.core.public_chat_hall.bean.PublicChatHallMessage;
|
||||||
@@ -23,7 +23,7 @@ import java.util.Set;
|
|||||||
/**
|
/**
|
||||||
* Created by huangjun on 2016/12/21.
|
* Created by huangjun on 2016/12/21.
|
||||||
*/
|
*/
|
||||||
public class PublicChatHallMsgAdapter extends BaseMultiItemFetchLoadAdapter<ChatRoomMessage, BaseViewHolder> {
|
public class PublicChatHallMsgAdapter extends BaseMultiItemFetchLoadAdapter<ChatRoomMessage, BaseMsgViewHolder> {
|
||||||
|
|
||||||
private Map<Class<? extends ChatRoomMsgViewHolderBase>, Integer> holder2ViewType;
|
private Map<Class<? extends ChatRoomMsgViewHolderBase>, Integer> holder2ViewType;
|
||||||
|
|
||||||
|
@@ -42,7 +42,7 @@ import com.nnbc123.app.R;
|
|||||||
import com.nnbc123.app.public_chat_hall.adapter.PublicChatHallMsgAdapter;
|
import com.nnbc123.app.public_chat_hall.adapter.PublicChatHallMsgAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseFetchLoadAdapter;
|
import com.nnbc123.app.public_chat_hall.msg.BaseFetchLoadAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.MsgListFetchLoadMoreView;
|
import com.nnbc123.app.public_chat_hall.msg.MsgListFetchLoadMoreView;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.OnItemClickListener;
|
import com.nnbc123.app.public_chat_hall.msg.OnMsgItemClickListener;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderBase;
|
import com.nnbc123.app.public_chat_hall.msg.viewholder.ChatRoomMsgViewHolderBase;
|
||||||
import com.nnbc123.core.public_chat_hall.manager.PublicChatHallDataManager;
|
import com.nnbc123.core.public_chat_hall.manager.PublicChatHallDataManager;
|
||||||
import com.nnbc123.library.utils.SingleToastUtil;
|
import com.nnbc123.library.utils.SingleToastUtil;
|
||||||
@@ -409,7 +409,7 @@ public class PublicChatHallMessageListPanel {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
private OnItemClickListener listener = new OnItemClickListener() {
|
private OnMsgItemClickListener listener = new OnMsgItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onItemClick(IRecyclerView adapter, View view, int position) {
|
public void onItemClick(IRecyclerView adapter, View view, int position) {
|
||||||
|
|
||||||
|
@@ -31,7 +31,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
||||||
|
|
||||||
public abstract class BaseFetchLoadAdapter<T, K extends BaseViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
public abstract class BaseFetchLoadAdapter<T, K extends BaseMsgViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
||||||
|
|
||||||
private static final String TAG = BaseFetchLoadAdapter.class.getSimpleName();
|
private static final String TAG = BaseFetchLoadAdapter.class.getSimpleName();
|
||||||
|
|
||||||
@@ -698,7 +698,7 @@ public abstract class BaseFetchLoadAdapter<T, K extends BaseViewHolder> extends
|
|||||||
* @return new ViewHolder
|
* @return new ViewHolder
|
||||||
*/
|
*/
|
||||||
protected K createBaseViewHolder(View view) {
|
protected K createBaseViewHolder(View view) {
|
||||||
return (K) new BaseViewHolder(view);
|
return (K) new BaseMsgViewHolder(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected int getDefItemViewType(int position) {
|
protected int getDefItemViewType(int position) {
|
||||||
|
@@ -25,7 +25,7 @@ import android.widget.TextView;
|
|||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.LinkedHashSet;
|
import java.util.LinkedHashSet;
|
||||||
|
|
||||||
public class BaseViewHolder extends RecyclerView.ViewHolder {
|
public class BaseMsgViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Views indexed with their IDs
|
* Views indexed with their IDs
|
||||||
@@ -44,7 +44,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
Object associatedObject;
|
Object associatedObject;
|
||||||
|
|
||||||
|
|
||||||
public BaseViewHolder(View view) {
|
public BaseMsgViewHolder(View view) {
|
||||||
super(view);
|
super(view);
|
||||||
this.views = new SparseArray<View>();
|
this.views = new SparseArray<View>();
|
||||||
this.childClickViewIds = new LinkedHashSet<>();
|
this.childClickViewIds = new LinkedHashSet<>();
|
||||||
@@ -72,13 +72,13 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param value The text to put in the text view.
|
* @param value The text to put in the text view.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setText(int viewId, CharSequence value) {
|
public BaseMsgViewHolder setText(int viewId, CharSequence value) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setText(value);
|
view.setText(value);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BaseViewHolder setText(int viewId, @StringRes int strId) {
|
public BaseMsgViewHolder setText(int viewId, @StringRes int strId) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setText(strId);
|
view.setText(strId);
|
||||||
return this;
|
return this;
|
||||||
@@ -91,7 +91,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param imageResId The image resource id.
|
* @param imageResId The image resource id.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageResource(int viewId, @DrawableRes int imageResId) {
|
public BaseMsgViewHolder setImageResource(int viewId, @DrawableRes int imageResId) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageResource(imageResId);
|
view.setImageResource(imageResId);
|
||||||
return this;
|
return this;
|
||||||
@@ -104,7 +104,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param color A color, not a resource id.
|
* @param color A color, not a resource id.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setBackgroundColor(int viewId, int color) {
|
public BaseMsgViewHolder setBackgroundColor(int viewId, int color) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setBackgroundColor(color);
|
view.setBackgroundColor(color);
|
||||||
return this;
|
return this;
|
||||||
@@ -117,7 +117,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param backgroundRes A resource to use as a background.
|
* @param backgroundRes A resource to use as a background.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setBackgroundRes(int viewId, @DrawableRes int backgroundRes) {
|
public BaseMsgViewHolder setBackgroundRes(int viewId, @DrawableRes int backgroundRes) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setBackgroundResource(backgroundRes);
|
view.setBackgroundResource(backgroundRes);
|
||||||
return this;
|
return this;
|
||||||
@@ -130,7 +130,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param textColor The text color (not a resource id).
|
* @param textColor The text color (not a resource id).
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTextColor(int viewId, int textColor) {
|
public BaseMsgViewHolder setTextColor(int viewId, int textColor) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTextColor(textColor);
|
view.setTextColor(textColor);
|
||||||
return this;
|
return this;
|
||||||
@@ -144,7 +144,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param drawable The image drawable.
|
* @param drawable The image drawable.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageDrawable(int viewId, Drawable drawable) {
|
public BaseMsgViewHolder setImageDrawable(int viewId, Drawable drawable) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageDrawable(drawable);
|
view.setImageDrawable(drawable);
|
||||||
return this;
|
return this;
|
||||||
@@ -153,7 +153,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Add an action to set the image of an image view. Can be called multiple times.
|
* Add an action to set the image of an image view. Can be called multiple times.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageBitmap(int viewId, Bitmap bitmap) {
|
public BaseMsgViewHolder setImageBitmap(int viewId, Bitmap bitmap) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageBitmap(bitmap);
|
view.setImageBitmap(bitmap);
|
||||||
return this;
|
return this;
|
||||||
@@ -163,7 +163,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* Add an action to set the alpha of a view. Can be called multiple times.
|
* Add an action to set the alpha of a view. Can be called multiple times.
|
||||||
* Alpha between 0-1.
|
* Alpha between 0-1.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setAlpha(int viewId, float value) {
|
public BaseMsgViewHolder setAlpha(int viewId, float value) {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
||||||
getView(viewId).setAlpha(value);
|
getView(viewId).setAlpha(value);
|
||||||
} else {
|
} else {
|
||||||
@@ -183,7 +183,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param visible True for VISIBLE, false for GONE.
|
* @param visible True for VISIBLE, false for GONE.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setVisible(int viewId, boolean visible) {
|
public BaseMsgViewHolder setVisible(int viewId, boolean visible) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setVisibility(visible ? View.VISIBLE : View.GONE);
|
view.setVisibility(visible ? View.VISIBLE : View.GONE);
|
||||||
return this;
|
return this;
|
||||||
@@ -195,7 +195,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId The id of the TextView to linkify.
|
* @param viewId The id of the TextView to linkify.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder linkify(int viewId) {
|
public BaseMsgViewHolder linkify(int viewId) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
Linkify.addLinks(view, Linkify.ALL);
|
Linkify.addLinks(view, Linkify.ALL);
|
||||||
return this;
|
return this;
|
||||||
@@ -204,7 +204,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Apply the typeface to the given viewId, and enable subpixel rendering.
|
* Apply the typeface to the given viewId, and enable subpixel rendering.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTypeface(int viewId, Typeface typeface) {
|
public BaseMsgViewHolder setTypeface(int viewId, Typeface typeface) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTypeface(typeface);
|
view.setTypeface(typeface);
|
||||||
view.setPaintFlags(view.getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG);
|
view.setPaintFlags(view.getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG);
|
||||||
@@ -214,7 +214,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Apply the typeface to all the given viewIds, and enable subpixel rendering.
|
* Apply the typeface to all the given viewIds, and enable subpixel rendering.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTypeface(Typeface typeface, int... viewIds) {
|
public BaseMsgViewHolder setTypeface(Typeface typeface, int... viewIds) {
|
||||||
for (int viewId : viewIds) {
|
for (int viewId : viewIds) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTypeface(typeface);
|
view.setTypeface(typeface);
|
||||||
@@ -230,7 +230,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param progress The progress.
|
* @param progress The progress.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setProgress(int viewId, int progress) {
|
public BaseMsgViewHolder setProgress(int viewId, int progress) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setProgress(progress);
|
view.setProgress(progress);
|
||||||
return this;
|
return this;
|
||||||
@@ -244,7 +244,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The max value of a ProgressBar.
|
* @param max The max value of a ProgressBar.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setProgress(int viewId, int progress, int max) {
|
public BaseMsgViewHolder setProgress(int viewId, int progress, int max) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
view.setProgress(progress);
|
view.setProgress(progress);
|
||||||
@@ -258,7 +258,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The max value of a ProgressBar.
|
* @param max The max value of a ProgressBar.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setMax(int viewId, int max) {
|
public BaseMsgViewHolder setMax(int viewId, int max) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
return this;
|
return this;
|
||||||
@@ -271,7 +271,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param rating The rating.
|
* @param rating The rating.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setRating(int viewId, float rating) {
|
public BaseMsgViewHolder setRating(int viewId, float rating) {
|
||||||
RatingBar view = getView(viewId);
|
RatingBar view = getView(viewId);
|
||||||
view.setRating(rating);
|
view.setRating(rating);
|
||||||
return this;
|
return this;
|
||||||
@@ -285,7 +285,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The range of the RatingBar to 0...max.
|
* @param max The range of the RatingBar to 0...max.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setRating(int viewId, float rating, int max) {
|
public BaseMsgViewHolder setRating(int viewId, float rating, int max) {
|
||||||
RatingBar view = getView(viewId);
|
RatingBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
view.setRating(rating);
|
view.setRating(rating);
|
||||||
@@ -300,7 +300,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public BaseViewHolder setOnClickListener(int viewId, View.OnClickListener listener) {
|
public BaseMsgViewHolder setOnClickListener(int viewId, View.OnClickListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnClickListener(listener);
|
view.setOnClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -312,7 +312,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId add the child view id can support childview click
|
* @param viewId add the child view id can support childview click
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder addOnClickListener(int viewId) {
|
public BaseMsgViewHolder addOnClickListener(int viewId) {
|
||||||
childClickViewIds.add(viewId);
|
childClickViewIds.add(viewId);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -323,7 +323,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId
|
* @param viewId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder addOnLongClickListener(int viewId) {
|
public BaseMsgViewHolder addOnLongClickListener(int viewId) {
|
||||||
itemChildLongClickViewIds.add(viewId);
|
itemChildLongClickViewIds.add(viewId);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -336,7 +336,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The on touch listener;
|
* @param listener The on touch listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnTouchListener(int viewId, View.OnTouchListener listener) {
|
public BaseMsgViewHolder setOnTouchListener(int viewId, View.OnTouchListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnTouchListener(listener);
|
view.setOnTouchListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -349,7 +349,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The on long click listener;
|
* @param listener The on long click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnLongClickListener(int viewId, View.OnLongClickListener listener) {
|
public BaseMsgViewHolder setOnLongClickListener(int viewId, View.OnLongClickListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnLongClickListener(listener);
|
view.setOnLongClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -362,7 +362,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item on click listener;
|
* @param listener The item on click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemClickListener(int viewId, AdapterView.OnItemClickListener listener) {
|
public BaseMsgViewHolder setOnItemClickListener(int viewId, AdapterView.OnItemClickListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemClickListener(listener);
|
view.setOnItemClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -375,7 +375,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item long click listener;
|
* @param listener The item long click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemLongClickListener(int viewId, AdapterView.OnItemLongClickListener listener) {
|
public BaseMsgViewHolder setOnItemLongClickListener(int viewId, AdapterView.OnItemLongClickListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemLongClickListener(listener);
|
view.setOnItemLongClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -388,7 +388,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item selected click listener;
|
* @param listener The item selected click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemSelectedClickListener(int viewId, AdapterView.OnItemSelectedListener listener) {
|
public BaseMsgViewHolder setOnItemSelectedClickListener(int viewId, AdapterView.OnItemSelectedListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemSelectedListener(listener);
|
view.setOnItemSelectedListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -401,7 +401,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The checked change listener of compound button.
|
* @param listener The checked change listener of compound button.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnCheckedChangeListener(int viewId, CompoundButton.OnCheckedChangeListener listener) {
|
public BaseMsgViewHolder setOnCheckedChangeListener(int viewId, CompoundButton.OnCheckedChangeListener listener) {
|
||||||
CompoundButton view = getView(viewId);
|
CompoundButton view = getView(viewId);
|
||||||
view.setOnCheckedChangeListener(listener);
|
view.setOnCheckedChangeListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -414,7 +414,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param tag The tag;
|
* @param tag The tag;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTag(int viewId, Object tag) {
|
public BaseMsgViewHolder setTag(int viewId, Object tag) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setTag(tag);
|
view.setTag(tag);
|
||||||
return this;
|
return this;
|
||||||
@@ -428,7 +428,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param tag The tag;
|
* @param tag The tag;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTag(int viewId, int key, Object tag) {
|
public BaseMsgViewHolder setTag(int viewId, int key, Object tag) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setTag(key, tag);
|
view.setTag(key, tag);
|
||||||
return this;
|
return this;
|
||||||
@@ -441,7 +441,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param checked The checked status;
|
* @param checked The checked status;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setChecked(int viewId, boolean checked) {
|
public BaseMsgViewHolder setChecked(int viewId, boolean checked) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
// View unable cast to Checkable
|
// View unable cast to Checkable
|
||||||
if (view instanceof CompoundButton) {
|
if (view instanceof CompoundButton) {
|
||||||
@@ -459,7 +459,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param adapter The adapter;
|
* @param adapter The adapter;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setAdapter(int viewId, Adapter adapter) {
|
public BaseMsgViewHolder setAdapter(int viewId, Adapter adapter) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setAdapter(adapter);
|
view.setAdapter(adapter);
|
||||||
return this;
|
return this;
|
@@ -10,7 +10,7 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public abstract class BaseMultiItemFetchLoadAdapter<T, K extends BaseViewHolder> extends BaseFetchLoadAdapter<T, K> {
|
public abstract class BaseMultiItemFetchLoadAdapter<T, K extends BaseMsgViewHolder> extends BaseFetchLoadAdapter<T, K> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* viewType->layoutResId
|
* viewType->layoutResId
|
||||||
|
@@ -21,7 +21,7 @@ public abstract class LoadMoreView {
|
|||||||
return mLoadMoreStatus;
|
return mLoadMoreStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void convert(BaseViewHolder holder) {
|
public void convert(BaseMsgViewHolder holder) {
|
||||||
switch (mLoadMoreStatus) {
|
switch (mLoadMoreStatus) {
|
||||||
case STATUS_LOADING:
|
case STATUS_LOADING:
|
||||||
visibleLoading(holder, true);
|
visibleLoading(holder, true);
|
||||||
@@ -41,15 +41,15 @@ public abstract class LoadMoreView {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoading(BaseViewHolder holder, boolean visible) {
|
private void visibleLoading(BaseMsgViewHolder holder, boolean visible) {
|
||||||
holder.setVisible(getLoadingViewId(), visible);
|
holder.setVisible(getLoadingViewId(), visible);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoadFail(BaseViewHolder holder, boolean visible) {
|
private void visibleLoadFail(BaseMsgViewHolder holder, boolean visible) {
|
||||||
holder.setVisible(getLoadFailViewId(), visible);
|
holder.setVisible(getLoadFailViewId(), visible);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoadEnd(BaseViewHolder holder, boolean visible) {
|
private void visibleLoadEnd(BaseMsgViewHolder holder, boolean visible) {
|
||||||
final int loadEndViewId = getLoadEndViewId();
|
final int loadEndViewId = getLoadEndViewId();
|
||||||
if (loadEndViewId != 0) {
|
if (loadEndViewId != 0) {
|
||||||
holder.setVisible(loadEndViewId, visible);
|
holder.setVisible(loadEndViewId, visible);
|
||||||
|
@@ -9,7 +9,7 @@ import com.netease.nim.uikit.common.ui.recyclerview.adapter.IRecyclerView;
|
|||||||
* of all the SimpleClickListener. This implements all methods in the
|
* of all the SimpleClickListener. This implements all methods in the
|
||||||
* {@link SimpleClickListener}
|
* {@link SimpleClickListener}
|
||||||
*/
|
*/
|
||||||
public abstract class OnItemClickListener<T extends IRecyclerView> extends SimpleClickListener<T> {
|
public abstract class OnMsgItemClickListener<T extends IRecyclerView> extends SimpleClickListener<T> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onItemLongClick(T adapter, View view, int position) {
|
public void onItemLongClick(T adapter, View view, int position) {
|
@@ -6,7 +6,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
* Created by huangjun on 2016/12/11.
|
* Created by huangjun on 2016/12/11.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public abstract class RecyclerViewHolder<T extends RecyclerView.Adapter, V extends BaseViewHolder, K> {
|
public abstract class RecyclerViewHolder<T extends RecyclerView.Adapter, V extends BaseMsgViewHolder, K> {
|
||||||
final private T adapter;
|
final private T adapter;
|
||||||
|
|
||||||
public RecyclerViewHolder(T adapter) {
|
public RecyclerViewHolder(T adapter) {
|
||||||
|
@@ -40,7 +40,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
}
|
}
|
||||||
if (!mGestureDetector.onTouchEvent(e) && e.getActionMasked() == MotionEvent.ACTION_UP && mIsShowPress) {
|
if (!mGestureDetector.onTouchEvent(e) && e.getActionMasked() == MotionEvent.ACTION_UP && mIsShowPress) {
|
||||||
if (mPressedView != null) {
|
if (mPressedView != null) {
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
BaseMsgViewHolder vh = (BaseMsgViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
||||||
if (vh == null || vh.getItemViewType() != IRecyclerView.LOADING_VIEW || vh.getItemViewType() != IRecyclerView.FETCHING_VIEW) {
|
if (vh == null || vh.getItemViewType() != IRecyclerView.LOADING_VIEW || vh.getItemViewType() != IRecyclerView.FETCHING_VIEW) {
|
||||||
mPressedView.setPressed(false);
|
mPressedView.setPressed(false);
|
||||||
}
|
}
|
||||||
@@ -108,7 +108,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
|
|
||||||
if (mIsPrepressed && mPressedView != null) {
|
if (mIsPrepressed && mPressedView != null) {
|
||||||
final View pressedView = mPressedView;
|
final View pressedView = mPressedView;
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(pressedView);
|
BaseMsgViewHolder vh = (BaseMsgViewHolder) recyclerView.getChildViewHolder(pressedView);
|
||||||
|
|
||||||
if (isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
if (isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
||||||
return false;
|
return false;
|
||||||
@@ -159,7 +159,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
boolean isChildLongClick = false;
|
boolean isChildLongClick = false;
|
||||||
if (mIsPrepressed && mPressedView != null) {
|
if (mIsPrepressed && mPressedView != null) {
|
||||||
mPressedView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
|
mPressedView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
BaseMsgViewHolder vh = (BaseMsgViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
||||||
if (!isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
if (!isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
||||||
longClickViewIds = vh.getItemChildLongClickViewIds();
|
longClickViewIds = vh.getItemChildLongClickViewIds();
|
||||||
if (longClickViewIds != null && longClickViewIds.size() > 0) {
|
if (longClickViewIds != null && longClickViewIds.size() > 0) {
|
||||||
|
@@ -24,7 +24,7 @@ import com.nnbc123.app.R;
|
|||||||
import com.nnbc123.app.public_chat_hall.adapter.PublicChatHallMsgAdapter;
|
import com.nnbc123.app.public_chat_hall.adapter.PublicChatHallMsgAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.event.PublicChatHallAvatarClickEvent;
|
import com.nnbc123.app.public_chat_hall.event.PublicChatHallAvatarClickEvent;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseViewHolder;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMsgViewHolder;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.RecyclerViewHolder;
|
import com.nnbc123.app.public_chat_hall.msg.RecyclerViewHolder;
|
||||||
import com.nnbc123.app.ui.utils.ImageLoadUtils;
|
import com.nnbc123.app.ui.utils.ImageLoadUtils;
|
||||||
import com.nnbc123.core.level.UserLevelResourceType;
|
import com.nnbc123.core.level.UserLevelResourceType;
|
||||||
@@ -42,7 +42,7 @@ import java.util.Map;
|
|||||||
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
||||||
*/
|
*/
|
||||||
public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter,
|
public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter,
|
||||||
BaseViewHolder, ChatRoomMessage> {
|
BaseMsgViewHolder, ChatRoomMessage> {
|
||||||
|
|
||||||
public ChatRoomMsgViewHolderBase(BaseMultiItemFetchLoadAdapter adapter) {
|
public ChatRoomMsgViewHolderBase(BaseMultiItemFetchLoadAdapter adapter) {
|
||||||
super(adapter);
|
super(adapter);
|
||||||
@@ -96,7 +96,7 @@ public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseM
|
|||||||
abstract protected void bindContentView();
|
abstract protected void bindContentView();
|
||||||
|
|
||||||
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(BaseMsgViewHolder holder) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -182,7 +182,7 @@ public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseM
|
|||||||
|
|
||||||
/// -- 以下是基类实现代码
|
/// -- 以下是基类实现代码
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, ChatRoomMessage data, int position, boolean isScrolling) {
|
public void convert(BaseMsgViewHolder holder, ChatRoomMessage data, int position, boolean isScrolling) {
|
||||||
view = holder.getConvertView();
|
view = holder.getConvertView();
|
||||||
context = holder.getContext();
|
context = holder.getContext();
|
||||||
message = data;
|
message = data;
|
||||||
|
@@ -12,7 +12,7 @@ import com.netease.nim.uikit.impl.NimUIKitImpl;
|
|||||||
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
||||||
import com.netease.nimlib.sdk.robot.model.RobotAttachment;
|
import com.netease.nimlib.sdk.robot.model.RobotAttachment;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.nnbc123.app.public_chat_hall.msg.BaseViewHolder;
|
import com.nnbc123.app.public_chat_hall.msg.BaseMsgViewHolder;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@@ -89,7 +89,7 @@ public class ChatRoomMsgViewHolderRobot extends ChatRoomMsgViewHolderText implem
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(BaseMsgViewHolder holder) {
|
||||||
holder.getChildClickViewIds().clear();
|
holder.getChildClickViewIds().clear();
|
||||||
for (int id : onClickIds) {
|
for (int id : onClickIds) {
|
||||||
holder.addOnClickListener(id);
|
holder.addOnClickListener(id);
|
||||||
|
@@ -8,7 +8,7 @@ import com.netease.nim.uikit.api.NimUIKit;
|
|||||||
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
||||||
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
||||||
import com.nnbc123.app.R;
|
import com.nnbc123.app.R;
|
||||||
@@ -41,7 +41,7 @@ public class RoomMsgCommonRecentViewHolder extends RoomMsgRecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void inflate(BaseViewHolder holder, final RecentContact recent) {
|
public void inflate(NimBaseViewHolder holder, final RecentContact recent) {
|
||||||
this.imgHead = holder.getView(R.id.img_head);
|
this.imgHead = holder.getView(R.id.img_head);
|
||||||
this.tvNickname = holder.getView(R.id.tv_nickname);
|
this.tvNickname = holder.getView(R.id.tv_nickname);
|
||||||
this.tvMessage = holder.getView(R.id.tv_message);
|
this.tvMessage = holder.getView(R.id.tv_message);
|
||||||
@@ -73,7 +73,7 @@ public class RoomMsgCommonRecentViewHolder extends RoomMsgRecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void refresh(BaseViewHolder holder, RecentContact recent, final int position) {
|
public void refresh(NimBaseViewHolder holder, RecentContact recent, final int position) {
|
||||||
|
|
||||||
|
|
||||||
// unread count animation
|
// unread count animation
|
||||||
|
@@ -4,7 +4,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
|
|
||||||
import com.netease.nim.uikit.business.recent.RecentContactsCallback;
|
import com.netease.nim.uikit.business.recent.RecentContactsCallback;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
||||||
import com.nnbc123.app.R;
|
import com.nnbc123.app.R;
|
||||||
@@ -16,7 +16,7 @@ import java.util.List;
|
|||||||
*
|
*
|
||||||
* @author MadisonRong
|
* @author MadisonRong
|
||||||
*/
|
*/
|
||||||
public class RoomMsgRecentContactAdapter extends BaseMultiItemQuickAdapter<RecentContact, BaseViewHolder> {
|
public class RoomMsgRecentContactAdapter extends BaseMultiItemQuickAdapter<RecentContact, NimBaseViewHolder> {
|
||||||
|
|
||||||
interface ViewType {
|
interface ViewType {
|
||||||
int VIEW_TYPE_COMMON = 1;
|
int VIEW_TYPE_COMMON = 1;
|
||||||
|
@@ -13,7 +13,7 @@ import com.netease.nim.uikit.business.uinfo.UserInfoHelper;
|
|||||||
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
||||||
import com.netease.nim.uikit.impl.cache.TeamDataCache;
|
import com.netease.nim.uikit.impl.cache.TeamDataCache;
|
||||||
@@ -25,7 +25,7 @@ import com.nnbc123.app.R;
|
|||||||
import com.nnbc123.app.ui.im.recent.RecentContactsFragment;
|
import com.nnbc123.app.ui.im.recent.RecentContactsFragment;
|
||||||
import com.nnbc123.core.helper.ImHelperUtils;
|
import com.nnbc123.core.helper.ImHelperUtils;
|
||||||
|
|
||||||
public abstract class RoomMsgRecentViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseViewHolder, RecentContact> {
|
public abstract class RoomMsgRecentViewHolder extends RecyclerViewHolder<BaseQuickAdapter, NimBaseViewHolder, RecentContact> {
|
||||||
|
|
||||||
public RoomMsgRecentViewHolder(BaseQuickAdapter adapter) {
|
public RoomMsgRecentViewHolder(BaseQuickAdapter adapter) {
|
||||||
super(adapter);
|
super(adapter);
|
||||||
@@ -57,17 +57,17 @@ public abstract class RoomMsgRecentViewHolder extends RecyclerViewHolder<BaseQui
|
|||||||
protected abstract String getContent(RecentContact recent);
|
protected abstract String getContent(RecentContact recent);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, RecentContact data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, RecentContact data, int position, boolean isScrolling) {
|
||||||
inflate(holder, data);
|
inflate(holder, data);
|
||||||
refresh(holder, data, position);
|
refresh(holder, data, position);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected abstract void inflate(BaseViewHolder holder, RecentContact data);
|
protected abstract void inflate(NimBaseViewHolder holder, RecentContact data);
|
||||||
|
|
||||||
protected abstract void refresh(BaseViewHolder holder, RecentContact data, int position);
|
protected abstract void refresh(NimBaseViewHolder holder, RecentContact data, int position);
|
||||||
|
|
||||||
|
|
||||||
protected void updateBackground(BaseViewHolder holder, RecentContact recent, int position) {
|
protected void updateBackground(NimBaseViewHolder holder, RecentContact recent, int position) {
|
||||||
if ((recent.getTag() & RecentContactsFragment.RECENT_TAG_STICKY) == 0) {
|
if ((recent.getTag() & RecentContactsFragment.RECENT_TAG_STICKY) == 0) {
|
||||||
holder.getConvertView().setBackgroundResource(R.drawable.bg_common_touch);
|
holder.getConvertView().setBackgroundResource(R.drawable.bg_common_touch);
|
||||||
} else {
|
} else {
|
||||||
@@ -98,7 +98,7 @@ public abstract class RoomMsgRecentViewHolder extends RecyclerViewHolder<BaseQui
|
|||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateMsgLabel(BaseViewHolder holder, RecentContact recent) {
|
protected void updateMsgLabel(NimBaseViewHolder holder, RecentContact recent) {
|
||||||
// 显示消息具体内容
|
// 显示消息具体内容
|
||||||
MoonUtil.identifyRecentVHFaceExpressionAndTags(holder.getContext(), tvMessage, getContent(recent), -1, 0.45f);
|
MoonUtil.identifyRecentVHFaceExpressionAndTags(holder.getContext(), tvMessage, getContent(recent), -1, 0.45f);
|
||||||
//tvMessage.setText(getContent());
|
//tvMessage.setText(getContent());
|
||||||
|
@@ -12,7 +12,7 @@ import com.netease.nim.uikit.business.team.helper.TeamHelper;
|
|||||||
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
import com.netease.nim.uikit.common.ui.drop.DropFake;
|
||||||
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
import com.netease.nim.uikit.common.ui.drop.DropManager;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.NIMClient;
|
import com.netease.nimlib.sdk.NIMClient;
|
||||||
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
|
import com.netease.nimlib.sdk.msg.attachment.MsgAttachment;
|
||||||
import com.netease.nimlib.sdk.msg.attachment.NotificationAttachment;
|
import com.netease.nimlib.sdk.msg.attachment.NotificationAttachment;
|
||||||
@@ -39,7 +39,7 @@ public class RoomMsgTeamRecentViewHolder extends RoomMsgRecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void inflate(BaseViewHolder holder, final RecentContact recent) {
|
public void inflate(NimBaseViewHolder holder, final RecentContact recent) {
|
||||||
this.imgHead = holder.getView(R.id.img_head);
|
this.imgHead = holder.getView(R.id.img_head);
|
||||||
this.tvNickname = holder.getView(R.id.tv_nickname);
|
this.tvNickname = holder.getView(R.id.tv_nickname);
|
||||||
this.tvMessage = holder.getView(R.id.tv_message);
|
this.tvMessage = holder.getView(R.id.tv_message);
|
||||||
@@ -75,7 +75,7 @@ public class RoomMsgTeamRecentViewHolder extends RoomMsgRecentViewHolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void refresh(BaseViewHolder holder, RecentContact recent, final int position) {
|
public void refresh(NimBaseViewHolder holder, RecentContact recent, final int position) {
|
||||||
|
|
||||||
// unread count animation
|
// unread count animation
|
||||||
boolean shouldBoom = lastUnreadCount > 0 && recent.getUnreadCount() == 0; // 未读数从N->0执行爆裂动画;
|
boolean shouldBoom = lastUnreadCount > 0 && recent.getUnreadCount() == 0; // 未读数从N->0执行爆裂动画;
|
||||||
|
@@ -3,15 +3,12 @@ package com.nnbc123.core.manager.trtc;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.BitmapFactory;
|
import android.graphics.BitmapFactory;
|
||||||
import android.opengl.EGL14;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.SurfaceView;
|
import android.view.SurfaceView;
|
||||||
|
|
||||||
import com.tencent.liteav.TXLiteAVCode;
|
|
||||||
import com.tencent.liteav.audio.TXAudioEffectManager;
|
import com.tencent.liteav.audio.TXAudioEffectManager;
|
||||||
import com.tencent.liteav.device.TXDeviceManager;
|
import com.tencent.liteav.device.TXDeviceManager;
|
||||||
import com.tencent.rtmp.TXLiveConstants;
|
|
||||||
import com.tencent.rtmp.TXLivePlayer;
|
import com.tencent.rtmp.TXLivePlayer;
|
||||||
import com.tencent.rtmp.ui.TXCloudVideoView;
|
import com.tencent.rtmp.ui.TXCloudVideoView;
|
||||||
import com.tencent.trtc.TRTCCloud;
|
import com.tencent.trtc.TRTCCloud;
|
||||||
@@ -28,7 +25,6 @@ import java.io.IOException;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.net.HttpURLConnection;
|
import java.net.HttpURLConnection;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.nio.ByteBuffer;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -48,22 +44,6 @@ import io.agora.rtc2.video.VideoCanvas;
|
|||||||
import io.agora.rtc2.video.VideoEncoderConfiguration;
|
import io.agora.rtc2.video.VideoEncoderConfiguration;
|
||||||
import io.agora.rtc2.video.WatermarkOptions;
|
import io.agora.rtc2.video.WatermarkOptions;
|
||||||
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_0;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_1;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_2;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_3;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_4;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_5;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceChangerType.TXLiveVoiceChangerType_6;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_0;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_1;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_2;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_3;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_4;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_5;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_6;
|
|
||||||
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_7;
|
|
||||||
import static com.tencent.rtmp.TXLivePlayer.PLAY_TYPE_LIVE_FLV;
|
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAnchor;
|
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAnchor;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAudience;
|
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAudience;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_APP_SCENE_LIVE;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_APP_SCENE_LIVE;
|
||||||
@@ -74,10 +54,6 @@ import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_FATAL;
|
|||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_INFO;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_INFO;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_NULL;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_NULL;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_WARN;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_LOG_LEVEL_WARN;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY;
|
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER;
|
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_BUFFER_TYPE_TEXTURE;
|
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_BUFFER_TYPE_UNKNOWN;
|
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_I420;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_I420;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_NV21;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_NV21;
|
||||||
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_TEXTURE_EXTERNAL_OES;
|
import static com.tencent.trtc.TRTCCloudDef.TRTC_VIDEO_PIXEL_FORMAT_TEXTURE_EXTERNAL_OES;
|
||||||
@@ -2045,7 +2021,7 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
|
|||||||
x = options.positionInLandscapeMode.x / (float) resolutionWidth;
|
x = options.positionInLandscapeMode.x / (float) resolutionWidth;
|
||||||
y = options.positionInLandscapeMode.y / (float) resolutionHeight;
|
y = options.positionInLandscapeMode.y / (float) resolutionHeight;
|
||||||
}
|
}
|
||||||
Bitmap bitmap = Utils.getBitmap(watermarkUrl, decodeWidth, decodeHeight);
|
Bitmap bitmap = TrtcUtils.getBitmap(watermarkUrl, decodeWidth, decodeHeight);
|
||||||
trtcCloud.setWatermark(bitmap, TRTC_VIDEO_STREAM_TYPE_BIG, x, y, width);
|
trtcCloud.setWatermark(bitmap, TRTC_VIDEO_STREAM_TYPE_BIG, x, y, width);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -3,7 +3,7 @@ package com.nnbc123.core.manager.trtc;
|
|||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.BitmapFactory;
|
import android.graphics.BitmapFactory;
|
||||||
|
|
||||||
public class Utils {
|
public class TrtcUtils {
|
||||||
|
|
||||||
private static boolean isSpace(final String s) {
|
private static boolean isSpace(final String s) {
|
||||||
if (s == null) return true;
|
if (s == null) return true;
|
@@ -65,7 +65,7 @@ public class SwipeBackActivity extends RxAppCompatActivity implements SwipeBack
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void scrollToFinishActivity() {
|
public void scrollToFinishActivity() {
|
||||||
Utils.convertActivityToTranslucent(this);
|
SwipeUtils.convertActivityToTranslucent(this);
|
||||||
getSwipeBackLayout().scrollToFinishActivity();
|
getSwipeBackLayout().scrollToFinishActivity();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -32,7 +32,7 @@ public class SwipeBackActivityHelper {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEdgeTouch(int edgeFlag) {
|
public void onEdgeTouch(int edgeFlag) {
|
||||||
Utils.convertActivityToTranslucent(mActivity);
|
SwipeUtils.convertActivityToTranslucent(mActivity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -10,8 +10,8 @@ import java.lang.reflect.Method;
|
|||||||
/**
|
/**
|
||||||
* Created by hm
|
* Created by hm
|
||||||
*/
|
*/
|
||||||
public class Utils {
|
public class SwipeUtils {
|
||||||
private Utils() {
|
private SwipeUtils() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
@@ -32,7 +32,7 @@ import com.nnbc123.library.common.transform.AssignScaleTransformation
|
|||||||
import com.nnbc123.library.common.transform.ComplexTransformation
|
import com.nnbc123.library.common.transform.ComplexTransformation
|
||||||
import com.nnbc123.library.common.util.ActivityHelper
|
import com.nnbc123.library.common.util.ActivityHelper
|
||||||
import com.nnbc123.library.common.util.LLogger
|
import com.nnbc123.library.common.util.LLogger
|
||||||
import com.nnbc123.library.common.util.Utils
|
import com.nnbc123.library.common.util.CommonUtils
|
||||||
import jp.wasabeef.glide.transformations.RoundedCornersTransformation
|
import jp.wasabeef.glide.transformations.RoundedCornersTransformation
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
@@ -372,7 +372,7 @@ class GlideUtils {
|
|||||||
this.asGif().load(uri)
|
this.asGif().load(uri)
|
||||||
.transform(
|
.transform(
|
||||||
CenterCrop(), RoundedCornersTransformation(
|
CenterCrop(), RoundedCornersTransformation(
|
||||||
Utils.dip2px(imageView.context, radius),
|
CommonUtils.dip2px(imageView.context, radius),
|
||||||
0, RoundedCornersTransformation.CornerType.ALL
|
0, RoundedCornersTransformation.CornerType.ALL
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -393,7 +393,7 @@ class GlideUtils {
|
|||||||
this.asGif().load(uri)
|
this.asGif().load(uri)
|
||||||
.transform(
|
.transform(
|
||||||
CenterCrop(), RoundedCornersTransformation(
|
CenterCrop(), RoundedCornersTransformation(
|
||||||
Utils.dip2px(imageView.context, radius),
|
CommonUtils.dip2px(imageView.context, radius),
|
||||||
0, RoundedCornersTransformation.CornerType.ALL
|
0, RoundedCornersTransformation.CornerType.ALL
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -416,7 +416,7 @@ class GlideUtils {
|
|||||||
.apply(options)
|
.apply(options)
|
||||||
.transform(
|
.transform(
|
||||||
CenterCrop(), RoundedCornersTransformation(
|
CenterCrop(), RoundedCornersTransformation(
|
||||||
Utils.dip2px(imageView.context, radius),
|
CommonUtils.dip2px(imageView.context, radius),
|
||||||
0, RoundedCornersTransformation.CornerType.ALL
|
0, RoundedCornersTransformation.CornerType.ALL
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -1200,7 +1200,7 @@ class GlideUtils {
|
|||||||
.error(resId)
|
.error(resId)
|
||||||
.transform(
|
.transform(
|
||||||
CenterCrop(), RoundedCornersTransformation(
|
CenterCrop(), RoundedCornersTransformation(
|
||||||
Utils.dip2px(imageView.context, radius),
|
CommonUtils.dip2px(imageView.context, radius),
|
||||||
0, RoundedCornersTransformation.CornerType.TOP
|
0, RoundedCornersTransformation.CornerType.TOP
|
||||||
)
|
)
|
||||||
).into(imageView)
|
).into(imageView)
|
||||||
@@ -1225,7 +1225,7 @@ class GlideUtils {
|
|||||||
.error(resId)
|
.error(resId)
|
||||||
.transform(
|
.transform(
|
||||||
CenterCrop(), RoundedCornersTransformation(
|
CenterCrop(), RoundedCornersTransformation(
|
||||||
Utils.dip2px(imageView.context, radius),
|
CommonUtils.dip2px(imageView.context, radius),
|
||||||
0, RoundedCornersTransformation.CornerType.ALL
|
0, RoundedCornersTransformation.CornerType.ALL
|
||||||
)
|
)
|
||||||
).into(imageView)
|
).into(imageView)
|
||||||
|
@@ -17,7 +17,7 @@ import java.util.List;
|
|||||||
* time: 2022/11/15
|
* time: 2022/11/15
|
||||||
* desc: 转换帮助类
|
* desc: 转换帮助类
|
||||||
*/
|
*/
|
||||||
public class Utils {
|
public class CommonUtils {
|
||||||
|
|
||||||
public static <T> boolean notEmpty(List<T> list) {
|
public static <T> boolean notEmpty(List<T> list) {
|
||||||
return !isEmpty(list);
|
return !isEmpty(list);
|
@@ -3,7 +3,7 @@ package com.netease.nim.uikit.business.ait.selector;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.decoration.DividerItemDecoration;
|
import com.netease.nim.uikit.common.ui.recyclerview.decoration.NimDividerItemDecoration;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -13,7 +13,7 @@ import java.util.Set;
|
|||||||
* Created by hzchenkang on 2017/6/22.
|
* Created by hzchenkang on 2017/6/22.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class AitContactDecoration extends DividerItemDecoration {
|
public class AitContactDecoration extends NimDividerItemDecoration {
|
||||||
|
|
||||||
// 不需要分割线
|
// 不需要分割线
|
||||||
private Set<Integer> ignoreDecorations;
|
private Set<Integer> ignoreDecorations;
|
||||||
|
@@ -9,7 +9,7 @@ import com.netease.nim.uikit.business.ait.selector.holder.TeamMemberViewHolder;
|
|||||||
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
||||||
import com.netease.nim.uikit.business.ait.selector.model.ItemType;
|
import com.netease.nim.uikit.business.ait.selector.model.ItemType;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -17,7 +17,7 @@ import java.util.List;
|
|||||||
* Created by hzchenkang on 2017/6/21.
|
* Created by hzchenkang on 2017/6/21.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class AitContactAdapter extends BaseMultiItemQuickAdapter<AitContactItem, BaseViewHolder> {
|
public class AitContactAdapter extends BaseMultiItemQuickAdapter<AitContactItem, NimBaseViewHolder> {
|
||||||
|
|
||||||
public AitContactAdapter(RecyclerView recyclerView, List<AitContactItem> data) {
|
public AitContactAdapter(RecyclerView recyclerView, List<AitContactItem> data) {
|
||||||
super(recyclerView, data);
|
super(recyclerView, data);
|
||||||
|
@@ -6,7 +6,7 @@ import com.netease.nim.uikit.R;
|
|||||||
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
|||||||
* Created by hzchenkang on 2017/6/21.
|
* Created by hzchenkang on 2017/6/21.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class RobotViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseViewHolder, AitContactItem<NimRobotInfo>> {
|
public class RobotViewHolder extends RecyclerViewHolder<BaseQuickAdapter, NimBaseViewHolder, AitContactItem<NimRobotInfo>> {
|
||||||
|
|
||||||
private HeadImageView headImageView;
|
private HeadImageView headImageView;
|
||||||
private TextView nameTextView;
|
private TextView nameTextView;
|
||||||
@@ -24,12 +24,12 @@ public class RobotViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseVi
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, AitContactItem<NimRobotInfo> data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, AitContactItem<NimRobotInfo> data, int position, boolean isScrolling) {
|
||||||
inflate(holder);
|
inflate(holder);
|
||||||
refresh(data.getModel());
|
refresh(data.getModel());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void inflate(BaseViewHolder holder) {
|
public void inflate(NimBaseViewHolder holder) {
|
||||||
headImageView = holder.getView(R.id.imageViewHeader);
|
headImageView = holder.getView(R.id.imageViewHeader);
|
||||||
nameTextView = holder.getView(R.id.textViewName);
|
nameTextView = holder.getView(R.id.textViewName);
|
||||||
}
|
}
|
||||||
|
@@ -5,14 +5,14 @@ import android.widget.TextView;
|
|||||||
import com.netease.nim.uikit.R;
|
import com.netease.nim.uikit.R;
|
||||||
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by hzchenkang on 2017/6/21.
|
* Created by hzchenkang on 2017/6/21.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class SimpleLabelViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseViewHolder, AitContactItem<String>> {
|
public class SimpleLabelViewHolder extends RecyclerViewHolder<BaseQuickAdapter, NimBaseViewHolder, AitContactItem<String>> {
|
||||||
|
|
||||||
private TextView textView;
|
private TextView textView;
|
||||||
|
|
||||||
@@ -21,12 +21,12 @@ public class SimpleLabelViewHolder extends RecyclerViewHolder<BaseQuickAdapter,
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, AitContactItem<String> data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, AitContactItem<String> data, int position, boolean isScrolling) {
|
||||||
inflate(holder);
|
inflate(holder);
|
||||||
refresh(data.getModel());
|
refresh(data.getModel());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void inflate(BaseViewHolder holder) {
|
public void inflate(NimBaseViewHolder holder) {
|
||||||
textView = holder.getView(R.id.tv_label);
|
textView = holder.getView(R.id.tv_label);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@ import com.netease.nim.uikit.business.ait.selector.model.AitContactItem;
|
|||||||
import com.netease.nim.uikit.business.team.helper.TeamHelper;
|
import com.netease.nim.uikit.business.team.helper.TeamHelper;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nimlib.sdk.team.model.TeamMember;
|
import com.netease.nimlib.sdk.team.model.TeamMember;
|
||||||
|
|
||||||
@@ -15,7 +15,7 @@ import com.netease.nimlib.sdk.team.model.TeamMember;
|
|||||||
* Created by hzchenkang on 2017/6/21.
|
* Created by hzchenkang on 2017/6/21.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class TeamMemberViewHolder extends RecyclerViewHolder<BaseQuickAdapter, BaseViewHolder, AitContactItem<TeamMember>> {
|
public class TeamMemberViewHolder extends RecyclerViewHolder<BaseQuickAdapter, NimBaseViewHolder, AitContactItem<TeamMember>> {
|
||||||
|
|
||||||
private HeadImageView headImageView;
|
private HeadImageView headImageView;
|
||||||
|
|
||||||
@@ -26,12 +26,12 @@ public class TeamMemberViewHolder extends RecyclerViewHolder<BaseQuickAdapter, B
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, AitContactItem<TeamMember> data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, AitContactItem<TeamMember> data, int position, boolean isScrolling) {
|
||||||
inflate(holder);
|
inflate(holder);
|
||||||
refresh(data.getModel());
|
refresh(data.getModel());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void inflate(BaseViewHolder holder) {
|
public void inflate(NimBaseViewHolder holder) {
|
||||||
headImageView = holder.getView(R.id.imageViewHeader);
|
headImageView = holder.getView(R.id.imageViewHeader);
|
||||||
nameTextView = holder.getView(R.id.textViewName);
|
nameTextView = holder.getView(R.id.textViewName);
|
||||||
}
|
}
|
||||||
|
@@ -8,7 +8,7 @@ import com.netease.nim.uikit.business.chatroom.viewholder.ChatRoomMsgViewHolderB
|
|||||||
import com.netease.nim.uikit.business.chatroom.viewholder.ChatRoomMsgViewHolderFactory;
|
import com.netease.nim.uikit.business.chatroom.viewholder.ChatRoomMsgViewHolderFactory;
|
||||||
import com.netease.nim.uikit.business.session.module.Container;
|
import com.netease.nim.uikit.business.session.module.Container;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage;
|
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||||
@@ -22,7 +22,7 @@ import java.util.Set;
|
|||||||
/**
|
/**
|
||||||
* Created by huangjun on 2016/12/21.
|
* Created by huangjun on 2016/12/21.
|
||||||
*/
|
*/
|
||||||
public class ChatRoomMsgAdapter extends BaseMultiItemFetchLoadAdapter<ChatRoomMessage, BaseViewHolder> {
|
public class ChatRoomMsgAdapter extends BaseMultiItemFetchLoadAdapter<ChatRoomMessage, NimBaseViewHolder> {
|
||||||
|
|
||||||
private Map<Class<? extends ChatRoomMsgViewHolderBase>, Integer> holder2ViewType;
|
private Map<Class<? extends ChatRoomMsgViewHolderBase>, Integer> holder2ViewType;
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@ import com.netease.nim.uikit.R;
|
|||||||
import com.netease.nim.uikit.business.chatroom.adapter.ChatRoomMsgAdapter;
|
import com.netease.nim.uikit.business.chatroom.adapter.ChatRoomMsgAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
||||||
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
||||||
@@ -32,7 +32,7 @@ import com.netease.nimlib.sdk.msg.constant.MsgStatusEnum;
|
|||||||
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
||||||
*/
|
*/
|
||||||
public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter,
|
public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter,
|
||||||
BaseViewHolder, ChatRoomMessage> {
|
NimBaseViewHolder, ChatRoomMessage> {
|
||||||
|
|
||||||
public ChatRoomMsgViewHolderBase(BaseMultiItemFetchLoadAdapter adapter) {
|
public ChatRoomMsgViewHolderBase(BaseMultiItemFetchLoadAdapter adapter) {
|
||||||
super(adapter);
|
super(adapter);
|
||||||
@@ -76,7 +76,7 @@ public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseM
|
|||||||
abstract protected void bindContentView();
|
abstract protected void bindContentView();
|
||||||
|
|
||||||
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(NimBaseViewHolder holder) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -160,7 +160,7 @@ public abstract class ChatRoomMsgViewHolderBase extends RecyclerViewHolder<BaseM
|
|||||||
|
|
||||||
/// -- 以下是基类实现代码
|
/// -- 以下是基类实现代码
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, ChatRoomMessage data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, ChatRoomMessage data, int position, boolean isScrolling) {
|
||||||
view = holder.getConvertView();
|
view = holder.getConvertView();
|
||||||
context = holder.getContext();
|
context = holder.getContext();
|
||||||
message = data;
|
message = data;
|
||||||
|
@@ -8,7 +8,7 @@ import com.netease.nim.uikit.business.robot.model.RobotResponseContent;
|
|||||||
import com.netease.nim.uikit.business.session.viewholder.robot.RobotContentLinearLayout;
|
import com.netease.nim.uikit.business.session.viewholder.robot.RobotContentLinearLayout;
|
||||||
import com.netease.nim.uikit.business.session.viewholder.robot.RobotLinkViewStyle;
|
import com.netease.nim.uikit.business.session.viewholder.robot.RobotLinkViewStyle;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
||||||
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
||||||
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
||||||
@@ -89,7 +89,7 @@ public class ChatRoomMsgViewHolderRobot extends ChatRoomMsgViewHolderText implem
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(NimBaseViewHolder holder) {
|
||||||
holder.getChildClickViewIds().clear();
|
holder.getChildClickViewIds().clear();
|
||||||
for (int id : onClickIds) {
|
for (int id : onClickIds) {
|
||||||
holder.addOnClickListener(id);
|
holder.addOnClickListener(id);
|
||||||
|
@@ -9,7 +9,7 @@ import com.netease.nim.uikit.business.session.module.Container;
|
|||||||
import com.netease.nim.uikit.business.session.viewholder.MsgViewHolderBase;
|
import com.netease.nim.uikit.business.session.viewholder.MsgViewHolderBase;
|
||||||
import com.netease.nim.uikit.business.session.viewholder.MsgViewHolderFactory;
|
import com.netease.nim.uikit.business.session.viewholder.MsgViewHolderFactory;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
||||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||||
@@ -24,7 +24,7 @@ import java.util.Set;
|
|||||||
/**
|
/**
|
||||||
* Created by huangjun on 2016/12/21.
|
* Created by huangjun on 2016/12/21.
|
||||||
*/
|
*/
|
||||||
public class MsgAdapter extends BaseMultiItemFetchLoadAdapter<IMMessage, BaseViewHolder> {
|
public class MsgAdapter extends BaseMultiItemFetchLoadAdapter<IMMessage, NimBaseViewHolder> {
|
||||||
|
|
||||||
private Map<Class<? extends MsgViewHolderBase>, Integer> holder2ViewType;
|
private Map<Class<? extends MsgViewHolderBase>, Integer> holder2ViewType;
|
||||||
|
|
||||||
|
@@ -2,7 +2,6 @@ package com.netease.nim.uikit.business.session.viewholder;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
@@ -18,7 +17,7 @@ import com.netease.nim.uikit.business.session.module.list.MsgAdapter;
|
|||||||
import com.netease.nim.uikit.business.team.helper.TeamHelper;
|
import com.netease.nim.uikit.business.team.helper.TeamHelper;
|
||||||
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
import com.netease.nim.uikit.common.ui.imageview.HeadImageView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
import com.netease.nim.uikit.common.util.sys.TimeUtil;
|
||||||
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
||||||
@@ -34,7 +33,7 @@ import com.netease.nimlib.sdk.msg.model.IMMessage;
|
|||||||
* 会话窗口消息列表项的ViewHolder基类,负责每个消息项的外层框架,包括头像,昵称,发送/接收进度条,重发按钮等。<br>
|
* 会话窗口消息列表项的ViewHolder基类,负责每个消息项的外层框架,包括头像,昵称,发送/接收进度条,重发按钮等。<br>
|
||||||
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
* 具体的消息展示项可继承该基类,然后完成具体消息内容展示即可。
|
||||||
*/
|
*/
|
||||||
public abstract class MsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter, BaseViewHolder, IMMessage> {
|
public abstract class MsgViewHolderBase extends RecyclerViewHolder<BaseMultiItemFetchLoadAdapter, NimBaseViewHolder, IMMessage> {
|
||||||
|
|
||||||
public ImageView nameIconView;
|
public ImageView nameIconView;
|
||||||
// basic
|
// basic
|
||||||
@@ -72,7 +71,7 @@ public abstract class MsgViewHolderBase extends RecyclerViewHolder<BaseMultiItem
|
|||||||
abstract protected void inflateContentView();
|
abstract protected void inflateContentView();
|
||||||
|
|
||||||
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
// 在该接口操作BaseViewHolder中的数据,进行事件绑定,可选
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(NimBaseViewHolder holder) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -164,7 +163,7 @@ public abstract class MsgViewHolderBase extends RecyclerViewHolder<BaseMultiItem
|
|||||||
|
|
||||||
/// -- 以下是基类实现代码
|
/// -- 以下是基类实现代码
|
||||||
@Override
|
@Override
|
||||||
public void convert(BaseViewHolder holder, IMMessage data, int position, boolean isScrolling) {
|
public void convert(NimBaseViewHolder holder, IMMessage data, int position, boolean isScrolling) {
|
||||||
view = holder.getConvertView();
|
view = holder.getConvertView();
|
||||||
context = holder.getContext();
|
context = holder.getContext();
|
||||||
message = data;
|
message = data;
|
||||||
|
@@ -7,7 +7,7 @@ import com.netease.nim.uikit.R;
|
|||||||
import com.netease.nim.uikit.business.robot.model.RobotResponseContent;
|
import com.netease.nim.uikit.business.robot.model.RobotResponseContent;
|
||||||
import com.netease.nim.uikit.business.session.viewholder.robot.RobotContentLinearLayout;
|
import com.netease.nim.uikit.business.session.viewholder.robot.RobotContentLinearLayout;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseMultiItemFetchLoadAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
import com.netease.nim.uikit.common.util.sys.ScreenUtil;
|
||||||
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
import com.netease.nim.uikit.impl.NimUIKitImpl;
|
||||||
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
import com.netease.nimlib.sdk.robot.model.NimRobotInfo;
|
||||||
@@ -99,7 +99,7 @@ public class MsgViewHolderRobot extends MsgViewHolderText implements RobotConten
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void bindHolder(BaseViewHolder holder) {
|
protected void bindHolder(NimBaseViewHolder holder) {
|
||||||
holder.getChildClickViewIds().clear();
|
holder.getChildClickViewIds().clear();
|
||||||
for (int id : onClickIds) {
|
for (int id : onClickIds) {
|
||||||
holder.addOnClickListener(id);
|
holder.addOnClickListener(id);
|
||||||
|
@@ -8,8 +8,8 @@ import android.view.View;
|
|||||||
import com.netease.nim.uikit.R;
|
import com.netease.nim.uikit.R;
|
||||||
import com.netease.nim.uikit.api.wrapper.NimToolBarOptions;
|
import com.netease.nim.uikit.api.wrapper.NimToolBarOptions;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.decoration.DividerItemDecoration;
|
import com.netease.nim.uikit.common.ui.recyclerview.decoration.NimDividerItemDecoration;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemClickListener;
|
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemClickListener;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -32,7 +32,7 @@ public abstract class ListActivityBase<T> extends UI {
|
|||||||
|
|
||||||
protected abstract int onItemResId();
|
protected abstract int onItemResId();
|
||||||
|
|
||||||
protected abstract void convertItem(BaseViewHolder helper, T item);
|
protected abstract void convertItem(NimBaseViewHolder helper, T item);
|
||||||
|
|
||||||
protected abstract void onItemClick(T item);
|
protected abstract void onItemClick(T item);
|
||||||
|
|
||||||
@@ -49,7 +49,7 @@ public abstract class ListActivityBase<T> extends UI {
|
|||||||
// RecyclerView
|
// RecyclerView
|
||||||
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.data_list);
|
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.data_list);
|
||||||
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
||||||
recyclerView.addItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.VERTICAL_LIST));
|
recyclerView.addItemDecoration(new NimDividerItemDecoration(this, NimDividerItemDecoration.VERTICAL_LIST));
|
||||||
recyclerView.addOnItemTouchListener(new OnItemClickListener<Adapter>() {
|
recyclerView.addOnItemTouchListener(new OnItemClickListener<Adapter>() {
|
||||||
@Override
|
@Override
|
||||||
public void onItemClick(Adapter adapter, View view, int position) {
|
public void onItemClick(Adapter adapter, View view, int position) {
|
||||||
@@ -62,16 +62,16 @@ public abstract class ListActivityBase<T> extends UI {
|
|||||||
|
|
||||||
// adapter
|
// adapter
|
||||||
final List<T> data = onLoadData();
|
final List<T> data = onLoadData();
|
||||||
final BaseQuickAdapter<T, BaseViewHolder> adapter = new Adapter(recyclerView, onItemResId(), data) {
|
final BaseQuickAdapter<T, NimBaseViewHolder> adapter = new Adapter(recyclerView, onItemResId(), data) {
|
||||||
@Override
|
@Override
|
||||||
protected void convert(BaseViewHolder helper, T item, int position, boolean isScrolling) {
|
protected void convert(NimBaseViewHolder helper, T item, int position, boolean isScrolling) {
|
||||||
convertItem(helper, item);
|
convertItem(helper, item);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
recyclerView.setAdapter(adapter);
|
recyclerView.setAdapter(adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class Adapter extends BaseQuickAdapter<T, BaseViewHolder> {
|
abstract class Adapter extends BaseQuickAdapter<T, NimBaseViewHolder> {
|
||||||
|
|
||||||
Adapter(RecyclerView recyclerView, final int layoutId, List<T> data) {
|
Adapter(RecyclerView recyclerView, final int layoutId, List<T> data) {
|
||||||
super(recyclerView, layoutId, data);
|
super(recyclerView, layoutId, data);
|
||||||
|
@@ -22,7 +22,7 @@ import com.netease.nim.uikit.common.ui.recyclerview.animation.ScaleInAnimation;
|
|||||||
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInBottomAnimation;
|
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInBottomAnimation;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInLeftAnimation;
|
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInLeftAnimation;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInRightAnimation;
|
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInRightAnimation;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.LoadMoreView;
|
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.LoadMoreView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.SimpleLoadMoreView;
|
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.SimpleLoadMoreView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.util.RecyclerViewUtil;
|
import com.netease.nim.uikit.common.ui.recyclerview.util.RecyclerViewUtil;
|
||||||
@@ -34,7 +34,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
||||||
|
|
||||||
public abstract class BaseFetchLoadAdapter<T, K extends BaseViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
public abstract class BaseFetchLoadAdapter<T, K extends NimBaseViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
||||||
|
|
||||||
private static final String TAG = BaseFetchLoadAdapter.class.getSimpleName();
|
private static final String TAG = BaseFetchLoadAdapter.class.getSimpleName();
|
||||||
|
|
||||||
@@ -701,7 +701,7 @@ public abstract class BaseFetchLoadAdapter<T, K extends BaseViewHolder> extends
|
|||||||
* @return new ViewHolder
|
* @return new ViewHolder
|
||||||
*/
|
*/
|
||||||
protected K createBaseViewHolder(View view) {
|
protected K createBaseViewHolder(View view) {
|
||||||
return (K) new BaseViewHolder(view);
|
return (K) new NimBaseViewHolder(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected int getDefItemViewType(int position) {
|
protected int getDefItemViewType(int position) {
|
||||||
|
@@ -10,14 +10,14 @@ import android.view.View;
|
|||||||
|
|
||||||
import com.netease.nim.uikit.R;
|
import com.netease.nim.uikit.R;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.callback.ItemDragAndSwipeCallback;
|
import com.netease.nim.uikit.common.ui.recyclerview.callback.ItemDragAndSwipeCallback;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemDragListener;
|
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemDragListener;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemSwipeListener;
|
import com.netease.nim.uikit.common.ui.recyclerview.listener.OnItemSwipeListener;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public abstract class BaseItemDraggableAdapter<T, K extends BaseViewHolder> extends BaseQuickAdapter<T, K> {
|
public abstract class BaseItemDraggableAdapter<T, K extends NimBaseViewHolder> extends BaseQuickAdapter<T, K> {
|
||||||
|
|
||||||
private static final int NO_TOGGLE_VIEW = 0;
|
private static final int NO_TOGGLE_VIEW = 0;
|
||||||
protected int mToggleViewId = NO_TOGGLE_VIEW;
|
protected int mToggleViewId = NO_TOGGLE_VIEW;
|
||||||
@@ -57,7 +57,7 @@ public abstract class BaseItemDraggableAdapter<T, K extends BaseViewHolder> exte
|
|||||||
if (mItemTouchHelper != null && itemDragEnabled && viewType != LOADING_VIEW && viewType != HEADER_VIEW
|
if (mItemTouchHelper != null && itemDragEnabled && viewType != LOADING_VIEW && viewType != HEADER_VIEW
|
||||||
&& viewType != EMPTY_VIEW && viewType != FOOTER_VIEW) {
|
&& viewType != EMPTY_VIEW && viewType != FOOTER_VIEW) {
|
||||||
if (mToggleViewId != NO_TOGGLE_VIEW) {
|
if (mToggleViewId != NO_TOGGLE_VIEW) {
|
||||||
View toggleView = ((BaseViewHolder) holder).getView(mToggleViewId);
|
View toggleView = ((NimBaseViewHolder) holder).getView(mToggleViewId);
|
||||||
if (toggleView != null) {
|
if (toggleView != null) {
|
||||||
toggleView.setTag(R.id.BaseQuickAdapter_viewholder_support, holder);
|
toggleView.setTag(R.id.BaseQuickAdapter_viewholder_support, holder);
|
||||||
if (mDragOnLongPress) {
|
if (mDragOnLongPress) {
|
||||||
|
@@ -5,7 +5,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
import android.util.SparseArray;
|
import android.util.SparseArray;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
|
|
||||||
import java.lang.reflect.Constructor;
|
import java.lang.reflect.Constructor;
|
||||||
@@ -13,7 +13,7 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public abstract class BaseMultiItemFetchLoadAdapter<T, K extends BaseViewHolder> extends BaseFetchLoadAdapter<T, K> {
|
public abstract class BaseMultiItemFetchLoadAdapter<T, K extends NimBaseViewHolder> extends BaseFetchLoadAdapter<T, K> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* viewType->layoutResId
|
* viewType->layoutResId
|
||||||
|
@@ -5,7 +5,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
import android.util.SparseArray;
|
import android.util.SparseArray;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.RecyclerViewHolder;
|
||||||
|
|
||||||
import java.lang.reflect.Constructor;
|
import java.lang.reflect.Constructor;
|
||||||
@@ -13,7 +13,7 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public abstract class BaseMultiItemQuickAdapter<T, K extends BaseViewHolder> extends BaseQuickAdapter<T, K> {
|
public abstract class BaseMultiItemQuickAdapter<T, K extends NimBaseViewHolder> extends BaseQuickAdapter<T, K> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* viewType->layoutResId
|
* viewType->layoutResId
|
||||||
|
@@ -39,7 +39,7 @@ import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInBottomAnima
|
|||||||
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInLeftAnimation;
|
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInLeftAnimation;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInRightAnimation;
|
import com.netease.nim.uikit.common.ui.recyclerview.animation.SlideInRightAnimation;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.entity.IExpandable;
|
import com.netease.nim.uikit.common.ui.recyclerview.entity.IExpandable;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.LoadMoreView;
|
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.LoadMoreView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.SimpleLoadMoreView;
|
import com.netease.nim.uikit.common.ui.recyclerview.loadmore.SimpleLoadMoreView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.util.RecyclerViewUtil;
|
import com.netease.nim.uikit.common.ui.recyclerview.util.RecyclerViewUtil;
|
||||||
@@ -52,7 +52,7 @@ import java.util.List;
|
|||||||
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
|
||||||
import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
|
import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
|
||||||
|
|
||||||
public abstract class BaseQuickAdapter<T, K extends BaseViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
public abstract class BaseQuickAdapter<T, K extends NimBaseViewHolder> extends RecyclerView.Adapter<K> implements IRecyclerView {
|
||||||
|
|
||||||
private boolean isScrolling = false;
|
private boolean isScrolling = false;
|
||||||
|
|
||||||
@@ -683,7 +683,7 @@ public abstract class BaseQuickAdapter<T, K extends BaseViewHolder> extends Recy
|
|||||||
* @return new ViewHolder
|
* @return new ViewHolder
|
||||||
*/
|
*/
|
||||||
protected K createBaseViewHolder(View view) {
|
protected K createBaseViewHolder(View view) {
|
||||||
return (K) new BaseViewHolder(view);
|
return (K) new NimBaseViewHolder(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -4,11 +4,11 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.entity.SectionEntity;
|
import com.netease.nim.uikit.common.ui.recyclerview.entity.SectionEntity;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public abstract class BaseSectionQuickAdapter<T extends SectionEntity, K extends BaseViewHolder> extends BaseQuickAdapter<T, K> {
|
public abstract class BaseSectionQuickAdapter<T extends SectionEntity, K extends NimBaseViewHolder> extends BaseQuickAdapter<T, K> {
|
||||||
|
|
||||||
|
|
||||||
protected int mSectionHeadResId;
|
protected int mSectionHeadResId;
|
||||||
@@ -53,6 +53,6 @@ public abstract class BaseSectionQuickAdapter<T extends SectionEntity, K extends
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected abstract void convertHead(BaseViewHolder helper, T item);
|
protected abstract void convertHead(NimBaseViewHolder helper, T item);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -13,7 +13,7 @@ import android.view.View;
|
|||||||
* Created by hzchenkang on 2016/12/2.
|
* Created by hzchenkang on 2016/12/2.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class DividerItemDecoration extends RecyclerView.ItemDecoration {
|
public class NimDividerItemDecoration extends RecyclerView.ItemDecoration {
|
||||||
private static final int[] ATTRS = new int[]{
|
private static final int[] ATTRS = new int[]{
|
||||||
android.R.attr.listDivider
|
android.R.attr.listDivider
|
||||||
};
|
};
|
||||||
@@ -26,7 +26,7 @@ public class DividerItemDecoration extends RecyclerView.ItemDecoration {
|
|||||||
|
|
||||||
private int mOrientation;
|
private int mOrientation;
|
||||||
|
|
||||||
public DividerItemDecoration(Context context, int orientation) {
|
public NimDividerItemDecoration(Context context, int orientation) {
|
||||||
final TypedArray a = context.obtainStyledAttributes(ATTRS);
|
final TypedArray a = context.obtainStyledAttributes(ATTRS);
|
||||||
mDivider = a.getDrawable(0);
|
mDivider = a.getDrawable(0);
|
||||||
a.recycle();
|
a.recycle();
|
@@ -40,7 +40,7 @@ import android.widget.TextView;
|
|||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.LinkedHashSet;
|
import java.util.LinkedHashSet;
|
||||||
|
|
||||||
public class BaseViewHolder extends RecyclerView.ViewHolder {
|
public class NimBaseViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Views indexed with their IDs
|
* Views indexed with their IDs
|
||||||
@@ -59,7 +59,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
Object associatedObject;
|
Object associatedObject;
|
||||||
|
|
||||||
|
|
||||||
public BaseViewHolder(View view) {
|
public NimBaseViewHolder(View view) {
|
||||||
super(view);
|
super(view);
|
||||||
this.views = new SparseArray<View>();
|
this.views = new SparseArray<View>();
|
||||||
this.childClickViewIds = new LinkedHashSet<>();
|
this.childClickViewIds = new LinkedHashSet<>();
|
||||||
@@ -87,13 +87,13 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param value The text to put in the text view.
|
* @param value The text to put in the text view.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setText(int viewId, CharSequence value) {
|
public NimBaseViewHolder setText(int viewId, CharSequence value) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setText(value);
|
view.setText(value);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BaseViewHolder setText(int viewId, @StringRes int strId) {
|
public NimBaseViewHolder setText(int viewId, @StringRes int strId) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setText(strId);
|
view.setText(strId);
|
||||||
return this;
|
return this;
|
||||||
@@ -106,7 +106,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param imageResId The image resource id.
|
* @param imageResId The image resource id.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageResource(int viewId, @DrawableRes int imageResId) {
|
public NimBaseViewHolder setImageResource(int viewId, @DrawableRes int imageResId) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageResource(imageResId);
|
view.setImageResource(imageResId);
|
||||||
return this;
|
return this;
|
||||||
@@ -119,7 +119,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param color A color, not a resource id.
|
* @param color A color, not a resource id.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setBackgroundColor(int viewId, int color) {
|
public NimBaseViewHolder setBackgroundColor(int viewId, int color) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setBackgroundColor(color);
|
view.setBackgroundColor(color);
|
||||||
return this;
|
return this;
|
||||||
@@ -132,7 +132,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param backgroundRes A resource to use as a background.
|
* @param backgroundRes A resource to use as a background.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setBackgroundRes(int viewId, @DrawableRes int backgroundRes) {
|
public NimBaseViewHolder setBackgroundRes(int viewId, @DrawableRes int backgroundRes) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setBackgroundResource(backgroundRes);
|
view.setBackgroundResource(backgroundRes);
|
||||||
return this;
|
return this;
|
||||||
@@ -145,7 +145,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param textColor The text color (not a resource id).
|
* @param textColor The text color (not a resource id).
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTextColor(int viewId, int textColor) {
|
public NimBaseViewHolder setTextColor(int viewId, int textColor) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTextColor(textColor);
|
view.setTextColor(textColor);
|
||||||
return this;
|
return this;
|
||||||
@@ -159,7 +159,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param drawable The image drawable.
|
* @param drawable The image drawable.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageDrawable(int viewId, Drawable drawable) {
|
public NimBaseViewHolder setImageDrawable(int viewId, Drawable drawable) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageDrawable(drawable);
|
view.setImageDrawable(drawable);
|
||||||
return this;
|
return this;
|
||||||
@@ -168,7 +168,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Add an action to set the image of an image view. Can be called multiple times.
|
* Add an action to set the image of an image view. Can be called multiple times.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setImageBitmap(int viewId, Bitmap bitmap) {
|
public NimBaseViewHolder setImageBitmap(int viewId, Bitmap bitmap) {
|
||||||
ImageView view = getView(viewId);
|
ImageView view = getView(viewId);
|
||||||
view.setImageBitmap(bitmap);
|
view.setImageBitmap(bitmap);
|
||||||
return this;
|
return this;
|
||||||
@@ -178,7 +178,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* Add an action to set the alpha of a view. Can be called multiple times.
|
* Add an action to set the alpha of a view. Can be called multiple times.
|
||||||
* Alpha between 0-1.
|
* Alpha between 0-1.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setAlpha(int viewId, float value) {
|
public NimBaseViewHolder setAlpha(int viewId, float value) {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
|
||||||
getView(viewId).setAlpha(value);
|
getView(viewId).setAlpha(value);
|
||||||
} else {
|
} else {
|
||||||
@@ -198,7 +198,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param visible True for VISIBLE, false for GONE.
|
* @param visible True for VISIBLE, false for GONE.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setVisible(int viewId, boolean visible) {
|
public NimBaseViewHolder setVisible(int viewId, boolean visible) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setVisibility(visible ? View.VISIBLE : View.GONE);
|
view.setVisibility(visible ? View.VISIBLE : View.GONE);
|
||||||
return this;
|
return this;
|
||||||
@@ -210,7 +210,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId The id of the TextView to linkify.
|
* @param viewId The id of the TextView to linkify.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder linkify(int viewId) {
|
public NimBaseViewHolder linkify(int viewId) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
Linkify.addLinks(view, Linkify.ALL);
|
Linkify.addLinks(view, Linkify.ALL);
|
||||||
return this;
|
return this;
|
||||||
@@ -219,7 +219,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Apply the typeface to the given viewId, and enable subpixel rendering.
|
* Apply the typeface to the given viewId, and enable subpixel rendering.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTypeface(int viewId, Typeface typeface) {
|
public NimBaseViewHolder setTypeface(int viewId, Typeface typeface) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTypeface(typeface);
|
view.setTypeface(typeface);
|
||||||
view.setPaintFlags(view.getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG);
|
view.setPaintFlags(view.getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG);
|
||||||
@@ -229,7 +229,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
/**
|
/**
|
||||||
* Apply the typeface to all the given viewIds, and enable subpixel rendering.
|
* Apply the typeface to all the given viewIds, and enable subpixel rendering.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTypeface(Typeface typeface, int... viewIds) {
|
public NimBaseViewHolder setTypeface(Typeface typeface, int... viewIds) {
|
||||||
for (int viewId : viewIds) {
|
for (int viewId : viewIds) {
|
||||||
TextView view = getView(viewId);
|
TextView view = getView(viewId);
|
||||||
view.setTypeface(typeface);
|
view.setTypeface(typeface);
|
||||||
@@ -245,7 +245,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param progress The progress.
|
* @param progress The progress.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setProgress(int viewId, int progress) {
|
public NimBaseViewHolder setProgress(int viewId, int progress) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setProgress(progress);
|
view.setProgress(progress);
|
||||||
return this;
|
return this;
|
||||||
@@ -259,7 +259,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The max value of a ProgressBar.
|
* @param max The max value of a ProgressBar.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setProgress(int viewId, int progress, int max) {
|
public NimBaseViewHolder setProgress(int viewId, int progress, int max) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
view.setProgress(progress);
|
view.setProgress(progress);
|
||||||
@@ -273,7 +273,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The max value of a ProgressBar.
|
* @param max The max value of a ProgressBar.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setMax(int viewId, int max) {
|
public NimBaseViewHolder setMax(int viewId, int max) {
|
||||||
ProgressBar view = getView(viewId);
|
ProgressBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
return this;
|
return this;
|
||||||
@@ -286,7 +286,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param rating The rating.
|
* @param rating The rating.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setRating(int viewId, float rating) {
|
public NimBaseViewHolder setRating(int viewId, float rating) {
|
||||||
RatingBar view = getView(viewId);
|
RatingBar view = getView(viewId);
|
||||||
view.setRating(rating);
|
view.setRating(rating);
|
||||||
return this;
|
return this;
|
||||||
@@ -300,7 +300,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param max The range of the RatingBar to 0...max.
|
* @param max The range of the RatingBar to 0...max.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setRating(int viewId, float rating, int max) {
|
public NimBaseViewHolder setRating(int viewId, float rating, int max) {
|
||||||
RatingBar view = getView(viewId);
|
RatingBar view = getView(viewId);
|
||||||
view.setMax(max);
|
view.setMax(max);
|
||||||
view.setRating(rating);
|
view.setRating(rating);
|
||||||
@@ -315,7 +315,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public BaseViewHolder setOnClickListener(int viewId, View.OnClickListener listener) {
|
public NimBaseViewHolder setOnClickListener(int viewId, View.OnClickListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnClickListener(listener);
|
view.setOnClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -327,7 +327,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId add the child view id can support childview click
|
* @param viewId add the child view id can support childview click
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder addOnClickListener(int viewId) {
|
public NimBaseViewHolder addOnClickListener(int viewId) {
|
||||||
childClickViewIds.add(viewId);
|
childClickViewIds.add(viewId);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -338,7 +338,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param viewId
|
* @param viewId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder addOnLongClickListener(int viewId) {
|
public NimBaseViewHolder addOnLongClickListener(int viewId) {
|
||||||
itemChildLongClickViewIds.add(viewId);
|
itemChildLongClickViewIds.add(viewId);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -351,7 +351,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The on touch listener;
|
* @param listener The on touch listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnTouchListener(int viewId, View.OnTouchListener listener) {
|
public NimBaseViewHolder setOnTouchListener(int viewId, View.OnTouchListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnTouchListener(listener);
|
view.setOnTouchListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -364,7 +364,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The on long click listener;
|
* @param listener The on long click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnLongClickListener(int viewId, View.OnLongClickListener listener) {
|
public NimBaseViewHolder setOnLongClickListener(int viewId, View.OnLongClickListener listener) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setOnLongClickListener(listener);
|
view.setOnLongClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -377,7 +377,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item on click listener;
|
* @param listener The item on click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemClickListener(int viewId, AdapterView.OnItemClickListener listener) {
|
public NimBaseViewHolder setOnItemClickListener(int viewId, AdapterView.OnItemClickListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemClickListener(listener);
|
view.setOnItemClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -390,7 +390,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item long click listener;
|
* @param listener The item long click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemLongClickListener(int viewId, AdapterView.OnItemLongClickListener listener) {
|
public NimBaseViewHolder setOnItemLongClickListener(int viewId, AdapterView.OnItemLongClickListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemLongClickListener(listener);
|
view.setOnItemLongClickListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -403,7 +403,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The item selected click listener;
|
* @param listener The item selected click listener;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnItemSelectedClickListener(int viewId, AdapterView.OnItemSelectedListener listener) {
|
public NimBaseViewHolder setOnItemSelectedClickListener(int viewId, AdapterView.OnItemSelectedListener listener) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setOnItemSelectedListener(listener);
|
view.setOnItemSelectedListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -416,7 +416,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param listener The checked change listener of compound button.
|
* @param listener The checked change listener of compound button.
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setOnCheckedChangeListener(int viewId, CompoundButton.OnCheckedChangeListener listener) {
|
public NimBaseViewHolder setOnCheckedChangeListener(int viewId, CompoundButton.OnCheckedChangeListener listener) {
|
||||||
CompoundButton view = getView(viewId);
|
CompoundButton view = getView(viewId);
|
||||||
view.setOnCheckedChangeListener(listener);
|
view.setOnCheckedChangeListener(listener);
|
||||||
return this;
|
return this;
|
||||||
@@ -429,7 +429,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param tag The tag;
|
* @param tag The tag;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTag(int viewId, Object tag) {
|
public NimBaseViewHolder setTag(int viewId, Object tag) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setTag(tag);
|
view.setTag(tag);
|
||||||
return this;
|
return this;
|
||||||
@@ -443,7 +443,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param tag The tag;
|
* @param tag The tag;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setTag(int viewId, int key, Object tag) {
|
public NimBaseViewHolder setTag(int viewId, int key, Object tag) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
view.setTag(key, tag);
|
view.setTag(key, tag);
|
||||||
return this;
|
return this;
|
||||||
@@ -456,7 +456,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param checked The checked status;
|
* @param checked The checked status;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setChecked(int viewId, boolean checked) {
|
public NimBaseViewHolder setChecked(int viewId, boolean checked) {
|
||||||
View view = getView(viewId);
|
View view = getView(viewId);
|
||||||
// View unable cast to Checkable
|
// View unable cast to Checkable
|
||||||
if (view instanceof CompoundButton) {
|
if (view instanceof CompoundButton) {
|
||||||
@@ -474,7 +474,7 @@ public class BaseViewHolder extends RecyclerView.ViewHolder {
|
|||||||
* @param adapter The adapter;
|
* @param adapter The adapter;
|
||||||
* @return The BaseViewHolder for chaining.
|
* @return The BaseViewHolder for chaining.
|
||||||
*/
|
*/
|
||||||
public BaseViewHolder setAdapter(int viewId, Adapter adapter) {
|
public NimBaseViewHolder setAdapter(int viewId, Adapter adapter) {
|
||||||
AdapterView view = getView(viewId);
|
AdapterView view = getView(viewId);
|
||||||
view.setAdapter(adapter);
|
view.setAdapter(adapter);
|
||||||
return this;
|
return this;
|
@@ -6,7 +6,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
* Created by huangjun on 2016/12/11.
|
* Created by huangjun on 2016/12/11.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public abstract class RecyclerViewHolder<T extends RecyclerView.Adapter, V extends BaseViewHolder, K> {
|
public abstract class RecyclerViewHolder<T extends RecyclerView.Adapter, V extends NimBaseViewHolder, K> {
|
||||||
final private T adapter;
|
final private T adapter;
|
||||||
|
|
||||||
public RecyclerViewHolder(T adapter) {
|
public RecyclerViewHolder(T adapter) {
|
||||||
|
@@ -9,7 +9,7 @@ import android.view.MotionEvent;
|
|||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.IRecyclerView;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.IRecyclerView;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
|
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@@ -49,7 +49,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
}
|
}
|
||||||
if (!mGestureDetector.onTouchEvent(e) && e.getActionMasked() == MotionEvent.ACTION_UP && mIsShowPress) {
|
if (!mGestureDetector.onTouchEvent(e) && e.getActionMasked() == MotionEvent.ACTION_UP && mIsShowPress) {
|
||||||
if (mPressedView != null) {
|
if (mPressedView != null) {
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
NimBaseViewHolder vh = (NimBaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
||||||
if (vh == null || vh.getItemViewType() != IRecyclerView.LOADING_VIEW || vh.getItemViewType() != IRecyclerView.FETCHING_VIEW) {
|
if (vh == null || vh.getItemViewType() != IRecyclerView.LOADING_VIEW || vh.getItemViewType() != IRecyclerView.FETCHING_VIEW) {
|
||||||
mPressedView.setPressed(false);
|
mPressedView.setPressed(false);
|
||||||
}
|
}
|
||||||
@@ -117,7 +117,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
|
|
||||||
if (mIsPrepressed && mPressedView != null) {
|
if (mIsPrepressed && mPressedView != null) {
|
||||||
final View pressedView = mPressedView;
|
final View pressedView = mPressedView;
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(pressedView);
|
NimBaseViewHolder vh = (NimBaseViewHolder) recyclerView.getChildViewHolder(pressedView);
|
||||||
|
|
||||||
if (isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
if (isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
||||||
return false;
|
return false;
|
||||||
@@ -168,7 +168,7 @@ public abstract class SimpleClickListener<T extends IRecyclerView> implements Re
|
|||||||
boolean isChildLongClick = false;
|
boolean isChildLongClick = false;
|
||||||
if (mIsPrepressed && mPressedView != null) {
|
if (mIsPrepressed && mPressedView != null) {
|
||||||
mPressedView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
|
mPressedView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
|
||||||
BaseViewHolder vh = (BaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
NimBaseViewHolder vh = (NimBaseViewHolder) recyclerView.getChildViewHolder(mPressedView);
|
||||||
if (!isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
if (!isHeaderOrFooterPosition(vh.getLayoutPosition())) {
|
||||||
longClickViewIds = vh.getItemChildLongClickViewIds();
|
longClickViewIds = vh.getItemChildLongClickViewIds();
|
||||||
if (longClickViewIds != null && longClickViewIds.size() > 0) {
|
if (longClickViewIds != null && longClickViewIds.size() > 0) {
|
||||||
|
@@ -4,7 +4,7 @@ import androidx.annotation.IdRes;
|
|||||||
import androidx.annotation.LayoutRes;
|
import androidx.annotation.LayoutRes;
|
||||||
|
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
import com.netease.nim.uikit.common.ui.recyclerview.adapter.BaseQuickAdapter;
|
||||||
import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
|
import com.netease.nim.uikit.common.ui.recyclerview.holder.NimBaseViewHolder;
|
||||||
|
|
||||||
public abstract class LoadMoreView {
|
public abstract class LoadMoreView {
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@ public abstract class LoadMoreView {
|
|||||||
return mLoadMoreStatus;
|
return mLoadMoreStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void convert(BaseViewHolder holder) {
|
public void convert(NimBaseViewHolder holder) {
|
||||||
switch (mLoadMoreStatus) {
|
switch (mLoadMoreStatus) {
|
||||||
case STATUS_LOADING:
|
case STATUS_LOADING:
|
||||||
visibleLoading(holder, true);
|
visibleLoading(holder, true);
|
||||||
@@ -44,15 +44,15 @@ public abstract class LoadMoreView {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoading(BaseViewHolder holder, boolean visible) {
|
private void visibleLoading(NimBaseViewHolder holder, boolean visible) {
|
||||||
holder.setVisible(getLoadingViewId(), visible);
|
holder.setVisible(getLoadingViewId(), visible);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoadFail(BaseViewHolder holder, boolean visible) {
|
private void visibleLoadFail(NimBaseViewHolder holder, boolean visible) {
|
||||||
holder.setVisible(getLoadFailViewId(), visible);
|
holder.setVisible(getLoadFailViewId(), visible);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void visibleLoadEnd(BaseViewHolder holder, boolean visible) {
|
private void visibleLoadEnd(NimBaseViewHolder holder, boolean visible) {
|
||||||
final int loadEndViewId = getLoadEndViewId();
|
final int loadEndViewId = getLoadEndViewId();
|
||||||
if (loadEndViewId != 0) {
|
if (loadEndViewId != 0) {
|
||||||
holder.setVisible(loadEndViewId, visible);
|
holder.setVisible(loadEndViewId, visible);
|
||||||
|
Reference in New Issue
Block a user