本文整理汇总了Java中org.telegram.messenger.support.widget.RecyclerView.ViewHolder方法的典型用法代码示例。如果您正苦于以下问题:Java RecyclerView.ViewHolder方法的具体用法?Java RecyclerView.ViewHolder怎么用?Java RecyclerView.ViewHolder使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.telegram.messenger.support.widget.RecyclerView
的用法示例。
在下文中一共展示了RecyclerView.ViewHolder方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
switch (holder.getItemViewType()) {
case 0:
TLRPC.Document sticker = cache.get(position);
((StickerEmojiCell) holder.itemView).setSticker(sticker, false);
break;
case 1:
if (position == totalItems) {
int row = (position - 1) / stickersPerRow;
TLRPC.TL_messages_stickerSet pack = rowStartPack.get(row);
if (pack == null) {
((EmptyCell) holder.itemView).setHeight(1);
} else {
int height = pager.getHeight() - (int) Math.ceil(pack.documents.size() / (float) stickersPerRow) * AndroidUtilities.dp(82);
((EmptyCell) holder.itemView).setHeight(height > 0 ? height : 1);
}
} else {
((EmptyCell) holder.itemView).setHeight(AndroidUtilities.dp(82));
}
break;
}
}
示例2: onCreateViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
Holder holder;
switch (viewType) {
case 1:
holder = new Holder(new PhotoAttachCameraCell(mContext));
break;
default:
if (!viewsCache.isEmpty()) {
holder = viewsCache.get(0);
viewsCache.remove(0);
} else {
holder = createHolder();
}
break;
}
return holder;
}
示例3: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
switch (holder.getItemViewType()) {
case 0:
TLRPC.Document sticker = cache.get(position);
((StickerEmojiCell) holder.itemView).setSticker(sticker, false);
break;
case 1:
if (position == totalItems) {
int row = (position - 1) / stickersPerRow;
TLRPC.TL_messages_stickerSet pack = rowStartPack.get(row);
if (pack == null) {
((EmptyCell) holder.itemView).setHeight(1);
} else {
int height = stickersGridView.getMeasuredHeight() - (int) Math.ceil(pack.documents.size() / (float) stickersPerRow) * AndroidUtilities.dp(82);
((EmptyCell) holder.itemView).setHeight(height > 0 ? height : 1);
}
} else {
((EmptyCell) holder.itemView).setHeight(AndroidUtilities.dp(82));
}
break;
}
}
示例4: onSwiped
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int swipeDir) {
itemTouchHelper.attachToRecyclerView(null);
itemTouchHelper.attachToRecyclerView(chatListView);
MessageObject message = ((ChatMessageCell) viewHolder.itemView).getMessageObject();
int type = getMessageType(message);
if (type == ChatActivity.attach_gallery) {
if (currentChat != null && !isBroadcast) {
showReplyPanel(true, message, null, null, false, true);
}
} else if (type != 0 && type != ChatActivity.edit_done) {
showReplyPanel(true, message, null, null, false, true);
}
}
示例5: getMovementFlags
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
if (viewHolder.getItemViewType() != 0) {
return makeMovementFlags(0, 0);
}
return makeMovementFlags(ItemTouchHelper.UP | ItemTouchHelper.DOWN, 0);
}
示例6: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) {
int side = 0;
if (i == 0) {
if (stickers.size() == 1) {
side = 2;
} else {
side = -1;
}
} else if (i == stickers.size() - 1) {
side = 1;
}
((StickerCell) viewHolder.itemView).setSticker(stickers.get(i), side);
}
示例7: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) {
Holder holder = (Holder) viewHolder;
if (i == enhanceTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_enhance, LocaleController.getString("Enhance", R.string.Enhance), enhanceValue);
} else if (i == highlightsTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_highlights, LocaleController.getString("Highlights", R.string.Highlights), highlightsValue);
} else if (i == contrastTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_contrast, LocaleController.getString("Contrast", R.string.Contrast), contrastValue);
} else if (i == exposureTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_brightness, LocaleController.getString("Exposure", R.string.Exposure), exposureValue);
} else if (i == warmthTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_warmth, LocaleController.getString("Warmth", R.string.Warmth), warmthValue);
} else if (i == saturationTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_saturation, LocaleController.getString("Saturation", R.string.Saturation), saturationValue);
} else if (i == vignetteTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_vignette, LocaleController.getString("Vignette", R.string.Vignette), vignetteValue);
} else if (i == shadowsTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_shadows, LocaleController.getString("Shadows", R.string.Shadows), shadowsValue);
} else if (i == grainTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_grain, LocaleController.getString("Grain", R.string.Grain), grainValue);
} else if (i == sharpenTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_details, LocaleController.getString("Sharpen", R.string.Sharpen), sharpenValue);
} else if (i == tintTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_tint, LocaleController.getString("Tint", R.string.Tint), tintHighlightsColor != 0 || tintShadowsColor != 0 ? "◆" : "");
} else if (i == fadeTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_fade, LocaleController.getString("Fade", R.string.Fade), fadeValue);
} else if (i == curvesTool) {
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_curve, LocaleController.getString("Curves", R.string.Curves), curvesToolValue.shouldBeSkipped() ? "" : "◆");
} else if (i == blurTool) {
String value = "";
if (blurType == 1) {
value = "R";
} else if (blurType == 2) {
value = "L";
}
((PhotoEditToolCell) holder.itemView).setIconAndTextAndValue(R.drawable.tool_blur, LocaleController.getString("Blur", R.string.Blur), value);
}
}
示例8: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
HintDialogCell cell = (HintDialogCell) holder.itemView;
TLRPC.TL_topPeer peer = SearchQuery.hints.get(position);
TLRPC.TL_dialog dialog = new TLRPC.TL_dialog();
TLRPC.Chat chat = null;
TLRPC.User user = null;
int did = 0;
if (peer.peer.user_id != 0) {
did = peer.peer.user_id;
user = MessagesController.getInstance().getUser(peer.peer.user_id);
} else if (peer.peer.channel_id != 0) {
did = -peer.peer.channel_id;
chat = MessagesController.getInstance().getChat(peer.peer.channel_id);
} else if (peer.peer.chat_id != 0) {
did = -peer.peer.chat_id;
chat = MessagesController.getInstance().getChat(peer.peer.chat_id);
}
cell.setTag(did);
String name = "";
if (user != null) {
name = ContactsController.formatName(user.first_name, user.last_name);
} else if (chat != null) {
name = chat.title;
}
cell.setDialog(did, false, name);
}
示例9: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
JoinSheetUserCell cell = (JoinSheetUserCell) holder.itemView;
if (position < chatInvite.participants.size()) {
cell.setUser(chatInvite.participants.get(position));
} else {
int participants_count;
if (chatInvite.chat != null) {
participants_count = chatInvite.chat.participants_count;
} else {
participants_count = chatInvite.participants_count;
}
cell.setCount(participants_count - chatInvite.participants.size());
}
}
示例10: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
if (position == botInfoRow) {
BotHelpCell helpView = (BotHelpCell) holder.itemView;
helpView.setText(!botInfo.isEmpty() ? botInfo.get(currentUser.id).description : null);
} else if (position == loadingDownRow || position == loadingUpRow) {
ChatLoadingCell loadingCell = (ChatLoadingCell) holder.itemView;
loadingCell.setProgressVisible(loadsCount > 1);
} else if (position >= messagesStartRow && position < messagesEndRow) {
MessageObject message = messages.get(messages.size() - (position - messagesStartRow) - 1);
View view = holder.itemView;
boolean selected = false;
boolean disableSelection = false;
if (actionBar.isActionModeShowed()) {
MessageObject messageObject = chatActivityEnterView != null ? chatActivityEnterView.getEditingMessageObject() : null;
if (messageObject == message || selectedMessagesIds[message.getDialogId() == dialog_id ? 0 : 1].containsKey(message.getId())) {
view.setBackgroundColor(Theme.MSG_SELECTED_BACKGROUND_COLOR);
selected = true;
} else {
view.setBackgroundColor(0);
}
disableSelection = true;
} else {
view.setBackgroundColor(0);
}
if (view instanceof ChatMessageCell) {
ChatMessageCell messageCell = (ChatMessageCell) view;
messageCell.isChat = currentChat != null;
messageCell.setMessageObject(message);
messageCell.setCheckPressed(!disableSelection, disableSelection && selected);
if (view instanceof ChatMessageCell && MediaController.getInstance().canDownloadMedia(MediaController.AUTODOWNLOAD_MASK_AUDIO)) {
((ChatMessageCell) view).downloadAudioIfNeed();
}
messageCell.setHighlighted(highlightMessageId != Integer.MAX_VALUE && message.getId() == highlightMessageId);
if (searchContainer != null && searchContainer.getVisibility() == View.VISIBLE && MessagesSearchQuery.getLastSearchQuery() != null) {
messageCell.setHighlightedText(MessagesSearchQuery.getLastSearchQuery());
} else {
messageCell.setHighlightedText(null);
}
} else if (view instanceof ChatActionCell) {
ChatActionCell actionCell = (ChatActionCell) view;
actionCell.setMessageObject(message);
} else if (view instanceof ChatUnreadCell) {
ChatUnreadCell unreadCell = (ChatUnreadCell) view;
unreadCell.setText(LocaleController.formatPluralString("NewMessages", unread_to_load));
}
}
}
示例11: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
((StickerEmojiCell) holder.itemView).setSticker(stickerSet.documents.get(position), true);
}
示例12: onBindViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
ShareDialogCell cell = (ShareDialogCell) holder.itemView;
TLRPC.TL_dialog dialog = getItem(position);
cell.setDialog(dialog, selectedDialogs.containsKey(dialog.id), null);
}
示例13: onCreateViewHolder
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
ContextLinkCell view = new ContextLinkCell(mContext);
return new Holder(view);
}
示例14: onViewAttachedToWindow
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public void onViewAttachedToWindow(RecyclerView.ViewHolder holder) {
if (holder.itemView instanceof DialogCell) {
((DialogCell) holder.itemView).checkCurrentDialogIndex();
}
}
示例15: onMove
import org.telegram.messenger.support.widget.RecyclerView; //导入方法依赖的package包/类
@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
return false;
}