android 4.0联系人界面代码一起分析下
来源:互联网 发布:eve ios软件 编辑:程序博客网 时间:2024/06/05 03:22
有大神研究过android的联系人界面吗?公司有关于这方面的要求所以有大神请知道啊!
今天研究了一下先说说新增界面的
通过ActivityManager的跳转log,我们很容易找到跳转到的页面是ContactEditorActivity。
在onCreate方法中,看到setContentView(R.layout.contact_editor_activity),您可能会想到,这和我刚说的好像不一样啊,这不是就通过setContentView方法设置界面的嘛,请跟我继续看。contact_editor_activity.xml中只有ScrollView和一个fragment两个组件,看样子应该在fragment中。进入ContactEditorFragment,找到该类的onCreateView方法,首先引起我们注意的肯定是final View view = inflater.inflate(R.layout.contact_editor_fragment, container, false),顺藤摸瓜,我们看看contact_editor_fragment.xml是否有什么神秘的地方?布局很简单,外面一个FrameLayout,包裹这一个ScrollView和一个id叫做editors的LinearLayout,看样子,应该是动态绑定的,看代码,在onCreateView的第二行,见到了如下的语句, mContent = (LinearLayout) view.findViewById(R.id.editors),啥也不用说,继续,哈哈,在onCreate方法中,我们看到了bindEditors()的身影。下面我们来看看是否有什么收获,引起我注意的就是mContent对象(对应于布局中的线性布局editors),在该方法中第一个注意点是mContent.removeAllViews(),也就是将线性布局中的对象全部移除,看样子接下来就是动态绑定了,接下来,看到下面的1句,final LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE),就更加坚定了我的想法,好,再往下就跟账户类型又关了,在往下,见到曙光了
final BaseRawContactEditorView editor;
if (!type.areContactsWritable()) {
editor = (BaseRawContactEditorView) inflater.inflate(
R.layout.raw_contact_readonly_editor_view, mContent, false);
((RawContactReadOnlyEditorView) editor).setListener(this);
} else {
editor=(RawContactEditorView) inflater.inflate(R.layout.raw_contact_editor_view,
mContent, false);
}
看样子是根据账户的类型,是否可以,然后加载不同的布局,通过log会发现,正常的情况下,添加联系人的情况type.areContactsWritable()都是true,也就是加载else语句所示的文件,我们先看看该文件,首先跟标签是com.android.contacts.editor.RawContactEditorView一个自定义的线性布局
但是我又看了联系人界面的peopleactivity的找到了
private void createViewsAndFragments(Bundle savedState) {
setContentView(R.layout.people_activity);
但是跟着找下次 我就疯了 糊涂了 下下午都没看明白啊
求有研究过的 一起分析一下
- android 4.0联系人界面代码一起分析下
- android 短信下,添加联系人,进入联系人多选界面出现联系人电话号码晃动的问题
- android打开系统联系人界面
- android 4.0联系人分析—导入导出
- android 4.0联系人分析—查找匹配
- android 4.0联系人分析—查找匹配
- android 4.0联系人分析—查找匹配
- android 4.0联系人分析—查找匹配
- android Contacts 联系人分析
- android打开联系人的代码
- Android 获取手机联系人代码
- Android Contacts 联系人源码分析
- Android手机联系人数据库分析
- Android Contacts 联系人源码分析
- Android Contacts 联系人源码分析
- 调用系统联系人的添加界面-android
- android调用系统添加联系人界面
- android 如何打开系统联系人界面
- Android底部菜单栏 仿微博效果
- 《进行有效决策的艺术》读书笔记
- Log4j输出包/类的日志文件
- 求1000以内的阶乘 组合数学基础练习例子(二)
- 雁过也,月满西楼
- android 4.0联系人界面代码一起分析下
- RTP协议分析
- how to install a vncserver or vncviewer in Ubuntu
- android2.x内存需求分析
- el表达式拆分、数组等用法
- freeswitch dialplan 笔记
- C++中的rand()函数
- Android APK反编译详解(附图)
- android:shape的使用