Fragment项目结构解析
FragmentBestPractice ——项目名称
src ——源码目录
com.example.fragmentbestpractice ——包名
MainActivity.java ——入口
News.java ——新闻实体类,包含新闻类的特性(title/content)与方法(getTitle()/setTitle()/getContent()/setContent());
NewsAdapter.java ——新闻列表适配器,继承自ArrayAdapter,以News为泛型,提供了getView()方法,可获取在相应位置上的News类,使得新闻标题在列表中显示;
NewsContentActivity.java ——显示新闻内容,继承自Activity,实现了actionStart()方法,重写了onCreate()方法,通过Intent获取传入的title和content,调用FragmentManager.findFragmentById()方法得到NewsContentFragment实例,调用newsContentFragment.fresh()方法,显示新闻内容和标题;
NewsContentFragment.java ——继承自Fragment,重写onCreateView()方法,实现refresh()方法,onCreateView()方法加载news_content_frag布局,获取新闻标题和内容控件,将调用方法传进来的参数设置进去,刷新新闻标题与内容;
NewsTitleFragment.java ——继承自Fragment,实现了OnItemClickListener接口,加载news_title_fragment布局,onAttach()方法数据初始化,完成NewsAdapter创建,onCreateView()方法加载news_title_frag布局,newsTitleListView注册点击事件,是否能够找到id为news_content_layout的View,判断当前是双页模式还是单页模式,若当前为单页模式,则启动活动NewsContentActivity显示新闻内容,若当前为双页模式,则刷新NewsContentFragment中的内容;
res ——资源路径
drawable-hdpi ——图片资源
ic_launcher.png
spilt_line_vertical.png
split_line.png
layout ——视图路径
activity_main.xml ——单页模式下新闻标题碎片
fragment_main.xml
news_content_frag.xml ——新闻内容布局文件,完整标题|分割线|新闻内容;
news_content.xml ——新闻内容布局,将news_content_fragment加载进来;
news_item.xml ——新闻标题缩略图预览布局文件
news_title_frag.xml ——碎片专用新闻标题布局
layout-sw600dp ——Fragment视图路径
activity_main.xml ——id=”news_content_layout”,双页模式,包含news_title_fragment和news_content_fragment两个碎片
AndroidManifest.xml ——项目配置文件