com.hyphenate.util.DateUtils Java Examples
The following examples show how to use
com.hyphenate.util.DateUtils.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: MyEaseConversationAdapter.java From Social with Apache License 2.0 | 4 votes |
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(com.hyphenate.easeui.R.layout.ease_row_chat_history, parent, false); } ViewHolder holder = (ViewHolder) convertView.getTag(); if (holder == null) { holder = new ViewHolder(); holder.name = (TextView) convertView.findViewById(com.hyphenate.easeui.R.id.name); holder.unreadLabel = (TextView) convertView.findViewById(com.hyphenate.easeui.R.id.unread_msg_number); holder.message = (TextView) convertView.findViewById(com.hyphenate.easeui.R.id.message); holder.time = (TextView) convertView.findViewById(com.hyphenate.easeui.R.id.time); holder.avatar = (ImageView) convertView.findViewById(com.hyphenate.easeui.R.id.avatar); holder.msgState = convertView.findViewById(com.hyphenate.easeui.R.id.msg_state); holder.list_itease_layout = (RelativeLayout) convertView.findViewById(com.hyphenate.easeui.R.id.list_itease_layout); convertView.setTag(holder); } holder.list_itease_layout.setBackgroundResource(com.hyphenate.easeui.R.drawable.ease_mm_listitem); // 获取与此用户/群组的会话 EMConversation conversation = getItem(position); // 获取用户username或者群组groupid String username = conversation.getUserName(); if (conversation.getType() == EMConversation.EMConversationType.GroupChat) { // 群聊消息,显示群聊头像 //Glide.with(getContext()).load //holder.avatar.setImageResource(com.hyphenate.easeui.R.drawable.ease_group_icon); Glide.with(getContext()).load(SharedPreferenceUtil.getGroupImgPath(conversation.getUserName())).into(holder.avatar); EMGroup group = EMClient.getInstance().groupManager().getGroup(username); holder.name.setText(group != null ? group.getGroupName() : username); } else if(conversation.getType() == EMConversation.EMConversationType.ChatRoom){ holder.avatar.setImageResource(com.hyphenate.easeui.R.drawable.ease_group_icon); EMChatRoom room = EMClient.getInstance().chatroomManager().getChatRoom(username); holder.name.setText(room != null && !TextUtils.isEmpty(room.getName()) ? room.getName() : username); }else { EaseUserUtils.setUserAvatar(getContext(), username, holder.avatar); EaseUserUtils.setUserNick(username, holder.name); } if (conversation.getUnreadMsgCount() > 0) { // 显示与此用户的消息未读数 holder.unreadLabel.setText(String.valueOf(conversation.getUnreadMsgCount())); holder.unreadLabel.setVisibility(View.VISIBLE); } else { holder.unreadLabel.setVisibility(View.INVISIBLE); } if (conversation.getAllMsgCount() != 0) { // 把最后一条消息的内容作为item的message内容 EMMessage lastMessage = conversation.getLastMessage(); holder.message.setText(EaseSmileUtils.getSmiledText(getContext(), EaseCommonUtils.getMessageDigest(lastMessage, (this.getContext()))), TextView.BufferType.SPANNABLE); holder.time.setText(DateUtils.getTimestampString(new Date(lastMessage.getMsgTime()))); if (lastMessage.direct() == EMMessage.Direct.SEND && lastMessage.status() == EMMessage.Status.FAIL) { holder.msgState.setVisibility(View.VISIBLE); } else { holder.msgState.setVisibility(View.GONE); } } //设置自定义属性 holder.name.setTextColor(primaryColor); holder.message.setTextColor(secondaryColor); holder.time.setTextColor(timeColor); if(primarySize != 0) holder.name.setTextSize(TypedValue.COMPLEX_UNIT_PX, primarySize); if(secondarySize != 0) holder.message.setTextSize(TypedValue.COMPLEX_UNIT_PX, secondarySize); if(timeSize != 0) holder.time.setTextSize(TypedValue.COMPLEX_UNIT_PX, timeSize); return convertView; }
Example #2
Source File: EaseConversationAdapater.java From Social with Apache License 2.0 | 4 votes |
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(R.layout.ease_row_chat_history, parent, false); } ViewHolder holder = (ViewHolder) convertView.getTag(); if (holder == null) { holder = new ViewHolder(); holder.name = (TextView) convertView.findViewById(R.id.name); holder.unreadLabel = (TextView) convertView.findViewById(R.id.unread_msg_number); holder.message = (TextView) convertView.findViewById(R.id.message); holder.time = (TextView) convertView.findViewById(R.id.time); holder.avatar = (ImageView) convertView.findViewById(R.id.avatar); holder.msgState = convertView.findViewById(R.id.msg_state); holder.list_itease_layout = (RelativeLayout) convertView.findViewById(R.id.list_itease_layout); convertView.setTag(holder); } holder.list_itease_layout.setBackgroundResource(R.drawable.ease_mm_listitem); // 获取与此用户/群组的会话 EMConversation conversation = getItem(position); // 获取用户username或者群组groupid String username = conversation.getUserName(); if (conversation.getType() == EMConversationType.GroupChat) { // 群聊消息,显示群聊头像 //Glide.with(getContext()).load holder.avatar.setImageResource(R.drawable.ease_group_icon); EMGroup group = EMClient.getInstance().groupManager().getGroup(username); holder.name.setText(group != null ? group.getGroupName() : username); } else if(conversation.getType() == EMConversationType.ChatRoom){ holder.avatar.setImageResource(R.drawable.ease_group_icon); EMChatRoom room = EMClient.getInstance().chatroomManager().getChatRoom(username); holder.name.setText(room != null && !TextUtils.isEmpty(room.getName()) ? room.getName() : username); }else { EaseUserUtils.setUserAvatar(getContext(), username, holder.avatar); EaseUserUtils.setUserNick(username, holder.name); } if (conversation.getUnreadMsgCount() > 0) { // 显示与此用户的消息未读数 holder.unreadLabel.setText(String.valueOf(conversation.getUnreadMsgCount())); holder.unreadLabel.setVisibility(View.VISIBLE); } else { holder.unreadLabel.setVisibility(View.INVISIBLE); } if (conversation.getAllMsgCount() != 0) { // 把最后一条消息的内容作为item的message内容 EMMessage lastMessage = conversation.getLastMessage(); holder.message.setText(EaseSmileUtils.getSmiledText(getContext(), EaseCommonUtils.getMessageDigest(lastMessage, (this.getContext()))), BufferType.SPANNABLE); holder.time.setText(DateUtils.getTimestampString(new Date(lastMessage.getMsgTime()))); if (lastMessage.direct() == EMMessage.Direct.SEND && lastMessage.status() == EMMessage.Status.FAIL) { holder.msgState.setVisibility(View.VISIBLE); } else { holder.msgState.setVisibility(View.GONE); } } //设置自定义属性 holder.name.setTextColor(primaryColor); holder.message.setTextColor(secondaryColor); holder.time.setTextColor(timeColor); if(primarySize != 0) holder.name.setTextSize(TypedValue.COMPLEX_UNIT_PX, primarySize); if(secondarySize != 0) holder.message.setTextSize(TypedValue.COMPLEX_UNIT_PX, secondarySize); if(timeSize != 0) holder.time.setTextSize(TypedValue.COMPLEX_UNIT_PX, timeSize); return convertView; }
Example #3
Source File: EaseChatRow.java From Social with Apache License 2.0 | 4 votes |
private void setUpBaseView() { // 设置用户昵称头像,bubble背景等 TextView timestamp = (TextView) findViewById(R.id.timestamp); if (timestamp != null) { if (position == 0) { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } else { // 两条消息时间离得如果稍长,显示时间 EMMessage prevMessage = (EMMessage) adapter.getItem(position - 1); if (prevMessage != null && DateUtils.isCloseEnough(message.getMsgTime(), prevMessage.getMsgTime())) { timestamp.setVisibility(View.GONE); } else { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } } } //设置头像和nick if(message.direct() == Direct.SEND){ EaseUserUtils.setUserAvatar(context, EMClient.getInstance().getCurrentUser(), userAvatarView); //发送方不显示nick // UserUtils.setUserNick(EMChatManager.getInstance().getCurrentUser(), usernickView); }else{ EaseUserUtils.setUserAvatar(context, message.getFrom(), userAvatarView); EaseUserUtils.setUserNick(message.getFrom(), usernickView); } if(deliveredView != null){ if (message.isDelivered()) { deliveredView.setVisibility(View.VISIBLE); } else { deliveredView.setVisibility(View.INVISIBLE); } } if(ackedView != null){ if (message.isAcked()) { if (deliveredView != null) { deliveredView.setVisibility(View.INVISIBLE); } ackedView.setVisibility(View.VISIBLE); } else { ackedView.setVisibility(View.INVISIBLE); } } if (adapter instanceof EaseMessageAdapter) { if (((EaseMessageAdapter) adapter).isShowAvatar()) userAvatarView.setVisibility(View.VISIBLE); else userAvatarView.setVisibility(View.GONE); if (usernickView != null) { if (((EaseMessageAdapter) adapter).isShowUserNick()) usernickView.setVisibility(View.VISIBLE); else usernickView.setVisibility(View.GONE); } if (message.direct() == Direct.SEND) { if (((EaseMessageAdapter) adapter).getMyBubbleBg() != null) bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getMyBubbleBg()); // else // bubbleLayout.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.chatto_bg)); } else if (message.direct() == Direct.RECEIVE) { if (((EaseMessageAdapter) adapter).getOtherBuddleBg() != null) bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getOtherBuddleBg()); // else // bubbleLayout.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.ease_chatfrom_bg)); } } }
Example #4
Source File: EaseConversationAdapter.java From Study_Android_Demo with Apache License 2.0 | 4 votes |
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(R.layout.ease_row_chat_history, parent, false); } ViewHolder holder = (ViewHolder) convertView.getTag(); if (holder == null) { holder = new ViewHolder(); holder.name = (TextView) convertView.findViewById(R.id.name); holder.unreadLabel = (TextView) convertView.findViewById(R.id.unread_msg_number); holder.message = (TextView) convertView.findViewById(R.id.message); holder.time = (TextView) convertView.findViewById(R.id.time); holder.avatar = (ImageView) convertView.findViewById(R.id.avatar); holder.msgState = convertView.findViewById(R.id.msg_state); holder.list_itease_layout = (RelativeLayout) convertView.findViewById(R.id.list_itease_layout); holder.motioned = (TextView) convertView.findViewById(R.id.mentioned); convertView.setTag(holder); } holder.list_itease_layout.setBackgroundResource(R.drawable.ease_mm_listitem); // get conversation EMConversation conversation = getItem(position); // get username or group id String username = conversation.getUserName(); if (conversation.getType() == EMConversationType.GroupChat) { String groupId = conversation.getUserName(); if(EaseAtMessageHelper.get().hasAtMeMsg(groupId)){ holder.motioned.setVisibility(View.VISIBLE); }else{ holder.motioned.setVisibility(View.GONE); } // group message, show group avatar holder.avatar.setImageResource(R.drawable.ease_group_icon); EMGroup group = EMClient.getInstance().groupManager().getGroup(username); holder.name.setText(group != null ? group.getGroupName() : username); } else if(conversation.getType() == EMConversationType.ChatRoom){ holder.avatar.setImageResource(R.drawable.ease_group_icon); EMChatRoom room = EMClient.getInstance().chatroomManager().getChatRoom(username); holder.name.setText(room != null && !TextUtils.isEmpty(room.getName()) ? room.getName() : username); holder.motioned.setVisibility(View.GONE); }else { EaseUserUtils.setUserAvatar(getContext(), username, holder.avatar); EaseUserUtils.setUserNick(username, holder.name); holder.motioned.setVisibility(View.GONE); } if (conversation.getUnreadMsgCount() > 0) { // show unread message count holder.unreadLabel.setText(String.valueOf(conversation.getUnreadMsgCount())); holder.unreadLabel.setVisibility(View.VISIBLE); } else { holder.unreadLabel.setVisibility(View.INVISIBLE); } if (conversation.getAllMsgCount() != 0) { // show the content of latest message EMMessage lastMessage = conversation.getLastMessage(); String content = null; if(cvsListHelper != null){ content = cvsListHelper.onSetItemSecondaryText(lastMessage); } holder.message.setText(EaseSmileUtils.getSmiledText(getContext(), EaseCommonUtils.getMessageDigest(lastMessage, (this.getContext()))), BufferType.SPANNABLE); if(content != null){ holder.message.setText(content); } holder.time.setText(DateUtils.getTimestampString(new Date(lastMessage.getMsgTime()))); if (lastMessage.direct() == EMMessage.Direct.SEND && lastMessage.status() == EMMessage.Status.FAIL) { holder.msgState.setVisibility(View.VISIBLE); } else { holder.msgState.setVisibility(View.GONE); } } //set property holder.name.setTextColor(primaryColor); holder.message.setTextColor(secondaryColor); holder.time.setTextColor(timeColor); if(primarySize != 0) holder.name.setTextSize(TypedValue.COMPLEX_UNIT_PX, primarySize); if(secondarySize != 0) holder.message.setTextSize(TypedValue.COMPLEX_UNIT_PX, secondarySize); if(timeSize != 0) holder.time.setTextSize(TypedValue.COMPLEX_UNIT_PX, timeSize); return convertView; }
Example #5
Source File: EaseChatRow.java From Study_Android_Demo with Apache License 2.0 | 4 votes |
private void setUpBaseView() { // set nickname, avatar and background of bubble TextView timestamp = (TextView) findViewById(R.id.timestamp); if (timestamp != null) { if (position == 0) { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } else { // show time stamp if interval with last message is > 30 seconds EMMessage prevMessage = (EMMessage) adapter.getItem(position - 1); if (prevMessage != null && DateUtils.isCloseEnough(message.getMsgTime(), prevMessage.getMsgTime())) { timestamp.setVisibility(View.GONE); } else { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } } } //set nickname and avatar if(message.direct() == Direct.SEND){ EaseUserUtils.setUserAvatar(context, EMClient.getInstance().getCurrentUser(), userAvatarView); }else{ EaseUserUtils.setUserAvatar(context, message.getFrom(), userAvatarView); EaseUserUtils.setUserNick(message.getFrom(), usernickView); } if(deliveredView != null){ if (message.isDelivered()) { deliveredView.setVisibility(View.VISIBLE); } else { deliveredView.setVisibility(View.INVISIBLE); } } if(ackedView != null){ if (message.isAcked()) { if (deliveredView != null) { deliveredView.setVisibility(View.INVISIBLE); } ackedView.setVisibility(View.VISIBLE); } else { ackedView.setVisibility(View.INVISIBLE); } } if (adapter instanceof EaseMessageAdapter) { if (((EaseMessageAdapter) adapter).isShowAvatar()) userAvatarView.setVisibility(View.VISIBLE); else userAvatarView.setVisibility(View.GONE); if (usernickView != null) { if (((EaseMessageAdapter) adapter).isShowUserNick()) usernickView.setVisibility(View.VISIBLE); else usernickView.setVisibility(View.GONE); } if (message.direct() == Direct.SEND) { if (((EaseMessageAdapter) adapter).getMyBubbleBg() != null) { bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getMyBubbleBg()); } } else if (message.direct() == Direct.RECEIVE) { if (((EaseMessageAdapter) adapter).getOtherBuddleBg() != null) { bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getOtherBuddleBg()); } } } }
Example #6
Source File: EaseChatRow.java From nono-android with GNU General Public License v3.0 | 4 votes |
private void setUpBaseView() { // 设置用户昵称头像,bubble背景等 TextView timestamp = (TextView) findViewById(R.id.timestamp); if (timestamp != null) { if (position == 0) { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } else { // 两条消息时间离得如果稍长,显示时间 EMMessage prevMessage = (EMMessage) adapter.getItem(position - 1); if (prevMessage != null && DateUtils.isCloseEnough(message.getMsgTime(), prevMessage.getMsgTime())) { timestamp.setVisibility(View.GONE); } else { timestamp.setText(DateUtils.getTimestampString(new Date(message.getMsgTime()))); timestamp.setVisibility(View.VISIBLE); } } } //设置头像和nick if(message.direct() == Direct.SEND){ EaseUserUtils.setUserAvatar(context, EMClient.getInstance().getCurrentUser(), userAvatarView); //发送方不显示nick // UserUtils.setUserNick(EMChatManager.getInstance().getCurrentUser(), usernickView); }else{ EaseUserUtils.setUserAvatar(context, message.getFrom(), userAvatarView); EaseUserUtils.setUserNick(message.getFrom(), usernickView); } if(deliveredView != null){ if (message.isDelivered()) { deliveredView.setVisibility(View.VISIBLE); } else { deliveredView.setVisibility(View.INVISIBLE); } } if(ackedView != null){ if (message.isAcked()) { if (deliveredView != null) { deliveredView.setVisibility(View.INVISIBLE); } ackedView.setVisibility(View.VISIBLE); } else { ackedView.setVisibility(View.INVISIBLE); } } if (adapter instanceof EaseMessageAdapter) { if (((EaseMessageAdapter) adapter).isShowAvatar()) userAvatarView.setVisibility(View.VISIBLE); else userAvatarView.setVisibility(View.GONE); if (usernickView != null) { if (((EaseMessageAdapter) adapter).isShowUserNick()) usernickView.setVisibility(View.VISIBLE); else usernickView.setVisibility(View.GONE); } if (message.direct() == Direct.SEND) { if (((EaseMessageAdapter) adapter).getMyBubbleBg() != null) bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getMyBubbleBg()); // else // bubbleLayout.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.chatto_bg)); } else if (message.direct() == Direct.RECEIVE) { if (((EaseMessageAdapter) adapter).getOtherBuddleBg() != null) bubbleLayout.setBackgroundDrawable(((EaseMessageAdapter) adapter).getOtherBuddleBg()); // else // bubbleLayout.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.ease_chatfrom_bg)); } } }
Example #7
Source File: EaseConversationAdapater.java From nono-android with GNU General Public License v3.0 | 4 votes |
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(R.layout.ease_row_chat_history, parent, false); } ViewHolder holder = (ViewHolder) convertView.getTag(); if (holder == null) { holder = new ViewHolder(); holder.name = (TextView) convertView.findViewById(R.id.name); holder.unreadLabel = (TextView) convertView.findViewById(R.id.unread_msg_number); holder.message = (TextView) convertView.findViewById(R.id.message); holder.time = (TextView) convertView.findViewById(R.id.time); holder.avatar = (CircleImageView) convertView.findViewById(R.id.avatar); holder.msgState = convertView.findViewById(R.id.msg_state); holder.list_itease_layout = (LinearLayout) convertView.findViewById(R.id.list_itease_layout); convertView.setTag(holder); } // 获取与此用户/群组的会话 EMConversation conversation = getItem(position); // 获取用户username或者群组groupid String username = conversation.getUserName(); EaseUserUtils.setUserAvatar(getContext(), username, holder.avatar); EaseUserUtils.setUserNick(username, holder.name); if (conversation.getUnreadMsgCount() > 0) { // 显示与此用户的消息未读数 holder.unreadLabel.setText(String.valueOf(conversation.getUnreadMsgCount())); holder.unreadLabel.setVisibility(View.VISIBLE); } else { holder.unreadLabel.setVisibility(View.INVISIBLE); } if (conversation.getAllMsgCount() != 0) { // 把最后一条消息的内容作为item的message内容 EMMessage lastMessage = conversation.getLastMessage(); holder.message.setText(EaseSmileUtils.getSmiledText(getContext(), EaseCommonUtils.getMessageDigest(lastMessage, (this.getContext()))), BufferType.SPANNABLE); holder.time.setText(DateUtils.getTimestampString(new Date(lastMessage.getMsgTime()))); if (lastMessage.direct() == EMMessage.Direct.SEND && lastMessage.status() == EMMessage.Status.FAIL) { holder.msgState.setVisibility(View.VISIBLE); } else { holder.msgState.setVisibility(View.GONE); } } //设置自定义属性 holder.name.setTextColor(primaryColor); holder.message.setTextColor(secondaryColor); holder.time.setTextColor(timeColor); if(primarySize != 0) holder.name.setTextSize(TypedValue.COMPLEX_UNIT_PX, primarySize); if(secondarySize != 0) holder.message.setTextSize(TypedValue.COMPLEX_UNIT_PX, secondarySize); if(timeSize != 0) holder.time.setTextSize(TypedValue.COMPLEX_UNIT_PX, timeSize); return convertView; }