ViewPager,ActionBar,Fragment--通讯录
来源:互联网 发布:apache spark 项目实战 编辑:程序博客网 时间:2024/06/06 23:16
一.添加ActionBar的标签,并实现接口ActionBar.TabListener来监听ActionBar
二.假设有三个标签对应三个ViewPager,每个ViewPager又对应一个Fragment
1).自定义一个类继承Fragment类
2).在onCreateView()方法中获取碎片所对应的layout所对应的的Vie并作为返回值返回
3).final FragmentManager fragmentManager = getFragmentManager(); //获取碎片管理器的对象
final FragmentTransaction transaction = fragmentManager .beginTransaction();
f = fragmentManager.findFragmentByTag(FAVORITE_TAG); //获取以FAVORITE_TAG为标签添加到栈中的碎片
4).如果原先已经以这个标签添加碎片的栈中, 碎片直接被取出
5).如果f == null 证明没有创建过碎片,那么要new一个碎片对象,同时通过transaction.add()把碎片添加到ViewPager
6).实现接口ViewPager.OnPageChangeListener,去监听ViewPager是否切换;如果切换ActionBar标签也跟着切换
---->Tab标签切换时通过switch语句为依据判断要显示那个Fragment,如:
hideFragment(ft, mContextMenuFragment);
hideFragment(ft, mCursorFragment);
showFragment(ft, mArrayFragment);
7).自定一个类去继承PagerAdapter,指引页面数据适配;适配过程中show()方法显示默认显示的Fragment
三.数据来源问题分析:(以一个碎片为例子)
PeopleActivity.java
--->创建ContactTileListFragment()对象时回去执行方法onCreateLoader()该方法返回一个CursorLoader对象,
--->返回时执行:ContactTileLoaderFactory.createStarredLoader()方法、
--->在方法返回值创建一个new CursorLoader(context, Contacts.CONTENT_URI, COLUMNS,Contacts.STARRED + "=?", new String[]{"1"}, Contacts.DISPLAY_NAME + " ASC")对象
--->去到CursorLoader.java下,推测创建对象时会执行loadInBackground()方法
--->执行getContext().getContentResolver().query(mUri, mProjection, mSelection,mSelectionArgs, mSortOrder);返回一个Cursor
--->上面获得Cursor会以参数的形式传入onLoadFinished()方法中
--->mAdapter.setContactCursor(data)方法把获得的Cursor传给适配器,ListView就可以显示联系人的信息了
- ViewPager,ActionBar,Fragment--通讯录
- ViewPager,ActionBar,Fragment应用--模仿通讯录滑动效果
- ViewPager,ActionBar,Fragment应用--模仿通讯录滑动效果
- ViewPager,ActionBar,Fragment应用--模仿通讯录滑动效果
- ActionBar + Fragment + ViewPager
- ActionBar+Fragment+viewpager
- Fragment+actionbar+viewpager
- 利用ViewPager+Fragment+actionbar + TabLayout
- Actionbar+Fragment+viewpager实现导航
- ActionBar和Fragment结合ViewPager实现TabActivity
- ActionBar和Fragment结合ViewPager实现TabActivity
- ActionBar和Fragment结合ViewPager实现TabActivity
- ActionBar和Fragment结合ViewPager实现TabActivity
- android 仿微信Tab ActionBar+ViewPager+Fragment
- android4.4 Fragment +ViewPager+actionbar 使用
- ActionBar和Fragment结合ViewPager实现TabActivity
- ActionBar和Fragment结合ViewPager实现TabActivity
- ActionBar和Fragment结合ViewPager实现TabActivity
- php 生成图片水印且合并多个图片 Demo
- 视频教程
- php四种排序
- mac 快捷键
- 如何学习嵌入式(转载)
- ViewPager,ActionBar,Fragment--通讯录
- java.lang.IllegalStateException: Failed to load ApplicationContext解决办法
- 网络编程常见函数的返回值
- Socket编程指南及示例程序
- 输入子系统--event层分析
- ubuntu stardict词典安装
- 开启游戏控制
- 当屏幕旋转桌面widget失效的问题
- 格商务PPT模板...