public class MessageViewModel extends AndroidViewModel implements MessageEventListener
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_COUNT |
static int |
DEFAULT_REMOTE_COUNT |
static int |
SHOW_UNREAD_MESSAGE_COUNT |
static java.lang.String[] |
writePermission |
Constructor and Description |
---|
MessageViewModel(android.app.Application application) |
Modifier and Type | Method and Description |
---|---|
void |
bindConversation(Conversation.ConversationType type,
java.lang.String targetId,
android.os.Bundle bundle) |
void |
cleanUnreadNewCount() |
void |
cleanUnreadStatus()
清理未读状态
|
void |
enterEditState()
启动编辑模式
|
void |
executePageEvent(PageEvent pageEvent) |
void |
executePostPageEvent(PageEvent pageEvent)
异步线程切换到主线程执行
|
int |
findPositionByMessageId(int messageId) |
int |
findPositionBySendTime(long sentTime) |
UiMessage |
findUIMessage(int messageId) |
UiMessage |
findUIMessage(java.lang.String messageUId) |
void |
forwardMessage(android.content.Intent data) |
Conversation.ConversationType |
getCurConversationType() |
java.lang.String |
getCurTargetId() |
Message |
getFirstUnreadMessage() |
<any> |
getHistoryMessageUnreadLiveData() |
long |
getLoadMoreSentTime() |
<any> |
getNewMentionMessageUnreadLiveData() |
<any> |
getNewMessageUnreadLiveData() |
java.util.List<Message> |
getNewUnReadMentionMessages() |
java.util.List<UiMessage> |
getNewUnReadMessages() |
<any> |
getPageEventLiveData() |
int |
getRefreshMessageId() |
long |
getRefreshSentTime() |
java.util.List<UiMessage> |
getSelectedUiMessages() |
IMessageState |
getState() |
<any> |
getUiMessageLiveData() |
java.util.List<UiMessage> |
getUiMessages() |
void |
hideHistoryBar() |
void |
hideNewMentionMessageBar() |
<any> |
IsEditStatusLiveData() |
boolean |
isForegroundActivity() |
boolean |
isInitMentionedMessageFinish() |
boolean |
isInitUnreadMessageFinish() |
boolean |
isRemoteMessageLoadFinish() |
boolean |
isScrollToBottom() |
UiMessage |
mapUIMessage(Message message) |
void |
newMentionMessageBarClick() |
void |
newMessageBarClick() |
void |
onAudioClick(UiMessage uiMessage) |
boolean |
onBackPressed() |
protected void |
onCleared() |
void |
onClearMessages(ClearEvent event) |
void |
onDeleteMessage(DeleteEvent event) |
void |
onDestroy() |
void |
onDownloadMessage(DownloadEvent event) |
void |
onExistUnreadMessage(Conversation conversation,
int unreadMessageCount) |
void |
onGetHistoryMessage(java.util.List<Message> messages)
初始化加载本地消息
下拉加载历史消息
|
void |
onInsertMessage(InsertEvent event) |
void |
onItemClick(UiMessage uiMessage) |
boolean |
onItemLongClick(UiMessage uiMessage) |
void |
onLoadMore() |
void |
onLoadMoreMessage(java.util.List<Message> messages)
上拉加载更多消息
|
void |
onPause() |
void |
onReadReceiptRequestClick(UiMessage uiMessage) |
void |
onReadReceiptStateClick(UiMessage uiMessage) |
void |
onRecallEvent(RecallEvent event) |
void |
onReEditClick(UiMessage uiMessage) |
void |
onRefresh() |
void |
onRefreshEvent(RefreshEvent event) |
void |
onReloadMessage(java.util.List<Message> messages)
normal状态点击历史消息bar
history状态点击新消息bar
|
void |
onResume() |
void |
onScrolled(RecyclerView recyclerView,
int dx,
int dy) |
void |
onSendMediaMessage(SendMediaEvent event) |
void |
onSendMessage(SendEvent event) |
void |
onStop() |
void |
onUserPortraitClick(android.content.Context context,
Conversation.ConversationType conversationType,
UserInfo userInfo,
java.lang.String targetId) |
boolean |
onUserPortraitLongClick(android.content.Context context,
Conversation.ConversationType conversationType,
UserInfo userInfo,
java.lang.String targetId) |
void |
onViewClick(int clickType,
UiMessage data) |
boolean |
onViewLongClick(int clickType,
UiMessage data) |
void |
onWarnClick(UiMessage uiMessage) |
void |
processHistoryDividerMessage() |
void |
processNewMessageUnread(boolean isMainThread) |
void |
quitEditMode()
退出编辑模式
|
void |
refreshAllMessage() |
void |
refreshAllMessage(boolean force) |
void |
refreshSingleMessage(UiMessage uiMessage) |
void |
reSendMessage(Message message) |
void |
setFirstUnreadMessage(Message firstUnreadMessage) |
void |
setInitMentionedMessageFinish(boolean initMentionedMessageFinish) |
void |
setInitUnreadMessageFinish(boolean initUnreadMessageFinish) |
void |
setNewUnReadMentionMessages(java.util.List<Message> newUnReadMentionMessages) |
void |
setRemoteMessageLoadFinish(boolean remoteMessageLoadFinish) |
void |
setScrollToBottom(boolean scrollToBottom) |
void |
setState(IMessageState state) |
void |
showHistoryBar(int unreadMessageCount) |
void |
showNewMentionMessageBar(int unreadMessageCount) |
void |
stopPlay() |
void |
unreadBarClick() |
void |
updateMentionMessage(io.rong.imlib.model.Message message) |
void |
updateNewMentionMessageUnreadBar() |
public static final int DEFAULT_COUNT
public static final int DEFAULT_REMOTE_COUNT
public static final int SHOW_UNREAD_MESSAGE_COUNT
public static java.lang.String[] writePermission
public void bindConversation(Conversation.ConversationType type, java.lang.String targetId, android.os.Bundle bundle)
public void onGetHistoryMessage(java.util.List<Message> messages)
public UiMessage mapUIMessage(Message message)
public void processHistoryDividerMessage()
public void refreshAllMessage()
public Message getFirstUnreadMessage()
public int findPositionByMessageId(int messageId)
public java.lang.String getCurTargetId()
public Conversation.ConversationType getCurConversationType()
public void refreshAllMessage(boolean force)
public void setFirstUnreadMessage(Message firstUnreadMessage)
public void onLoadMoreMessage(java.util.List<Message> messages)
public void onReloadMessage(java.util.List<Message> messages)
public <any> getPageEventLiveData()
public void onWarnClick(UiMessage uiMessage)
public void onItemClick(UiMessage uiMessage)
public boolean onItemLongClick(UiMessage uiMessage)
public void onUserPortraitClick(android.content.Context context, Conversation.ConversationType conversationType, UserInfo userInfo, java.lang.String targetId)
public boolean onUserPortraitLongClick(android.content.Context context, Conversation.ConversationType conversationType, UserInfo userInfo, java.lang.String targetId)
public void reSendMessage(Message message)
public void onAudioClick(UiMessage uiMessage)
public boolean onBackPressed()
public void quitEditMode()
public UiMessage findUIMessage(java.lang.String messageUId)
public void onSendMessage(SendEvent event)
onSendMessage
in interface MessageEventListener
public UiMessage findUIMessage(int messageId)
public void refreshSingleMessage(UiMessage uiMessage)
public int findPositionBySendTime(long sentTime)
public void executePageEvent(PageEvent pageEvent)
public void onSendMediaMessage(SendMediaEvent event)
onSendMediaMessage
in interface MessageEventListener
public void onDownloadMessage(DownloadEvent event)
onDownloadMessage
in interface MessageEventListener
public void onDeleteMessage(DeleteEvent event)
onDeleteMessage
in interface MessageEventListener
public void onRecallEvent(RecallEvent event)
onRecallEvent
in interface MessageEventListener
public void processNewMessageUnread(boolean isMainThread)
public void onRefreshEvent(RefreshEvent event)
onRefreshEvent
in interface MessageEventListener
public void onInsertMessage(InsertEvent event)
onInsertMessage
in interface MessageEventListener
public void onClearMessages(ClearEvent event)
onClearMessages
in interface MessageEventListener
public void updateNewMentionMessageUnreadBar()
public void hideHistoryBar()
public int getRefreshMessageId()
public long getRefreshSentTime()
public long getLoadMoreSentTime()
public boolean isRemoteMessageLoadFinish()
public void setRemoteMessageLoadFinish(boolean remoteMessageLoadFinish)
public boolean isScrollToBottom()
public void setScrollToBottom(boolean scrollToBottom)
public void updateMentionMessage(io.rong.imlib.model.Message message)
public void executePostPageEvent(PageEvent pageEvent)
pageEvent
- 执行的 eventpublic void onReadReceiptRequestClick(UiMessage uiMessage)
public void onReadReceiptStateClick(UiMessage uiMessage)
public void onReEditClick(UiMessage uiMessage)
public void onRefresh()
public void cleanUnreadNewCount()
public void newMessageBarClick()
public void unreadBarClick()
public void newMentionMessageBarClick()
public void enterEditState()
public void forwardMessage(android.content.Intent data)
public java.util.List<UiMessage> getSelectedUiMessages()
public void onLoadMore()
protected void onCleared()
public boolean isForegroundActivity()
public void onViewClick(int clickType, UiMessage data)
public boolean onViewLongClick(int clickType, UiMessage data)
public <any> getUiMessageLiveData()
public <any> getNewMessageUnreadLiveData()
public <any> IsEditStatusLiveData()
public IMessageState getState()
public void setState(IMessageState state)
public java.util.List<UiMessage> getNewUnReadMessages()
public java.util.List<Message> getNewUnReadMentionMessages()
public void setNewUnReadMentionMessages(java.util.List<Message> newUnReadMentionMessages)
public void showHistoryBar(int unreadMessageCount)
public <any> getHistoryMessageUnreadLiveData()
public void showNewMentionMessageBar(int unreadMessageCount)
public void hideNewMentionMessageBar()
public <any> getNewMentionMessageUnreadLiveData()
public void onScrolled(RecyclerView recyclerView, int dx, int dy)
public java.util.List<UiMessage> getUiMessages()
public void onExistUnreadMessage(Conversation conversation, int unreadMessageCount)
public void onResume()
public void cleanUnreadStatus()
public boolean isInitUnreadMessageFinish()
public boolean isInitMentionedMessageFinish()
public void setInitMentionedMessageFinish(boolean initMentionedMessageFinish)
public void setInitUnreadMessageFinish(boolean initUnreadMessageFinish)
public void onPause()
public void stopPlay()
public void onStop()
public void onDestroy()