进入短信(Mms)这个app首先是conversationList,分别是conversationListItem和conversationListAdapter。--conversation_list_screen.xml
conversationList主界面底部的指引栏:
点击中间的图标是SearchView?MemuItem?
之后会启动
SearchActivity-->具体的实现是在SearchActivityExtend
点击第一个图标是:
private
View.OnClickListener mComposeClickHandler =
new
View.OnClickListener() {
@Override
public void
onClick(View view) {
if
(mIsSmsEnabled) {
if
(mIsRcsEnabled) {
selectComposeAction()
;
}
else
{
createNewMessage()
;
}
}
else
{
// Display a toast letting the user know they can not compose.
if
(mComposeDisabledToast ==
null
) {
mComposeDisabledToast = Toast.makeText(ConversationList.
this,
R.string.compose_disabled_toast
,
Toast.LENGTH_SHORT)
;
}
mComposeDisabledToast.show()
;
}
}
}
;
selectComposeAction()负责弹出对话框
分别有新信息和新群聊
新信息的方法:
createNewMessage()
composeMessageActivity
新群聊:
createNewGroupChat()
对应的是RcsCreateGroupChatActivity这个activity---rcs_new_group_chat_activity
好奇怪的启动activity的方法:
startActivity(ComposeMessageActivity.createIntent(this, 0));
为什么不直接startActivity(this,ComposeMessageActivity.class);?
点击item后进入的是composeMessageActivity
ComposeMessageActivity:--》 MessageListView --》MessageListAdapter
ListView多选:
MultiChoiceModeListener recyclerview呢?
长按列表的任意一个后actionbar会变化
点击actionbar的optionsitem触发
onActionItemClicked方法
actionItemClicked为变化后的optionsitem
点击详情就会跳转到MailBoxMessageContenrt --》MessageDetailAdapter --》MessageItem
设置--custom_preference对应的activity是MessagingPreferenceActivity
preferenceactivity的原理是点击preference后就startIntent
管理sim卡的短信--ManageSimMessages
getWindow().requestFeature(Window.FEATURE_PROGRESS);
在标题栏上面会显示一个动态的刷新loading