新闻类客户端第二天——fragment搭建基本UI
来源:互联网 发布:sql语句中isnull 编辑:程序博客网 时间:2024/05/29 03:02
一.创建两个fragment
1.首先建一个工厂类BaseFragment
public abstract class BaseFagment extends Fragment { public Activity mActivity;//这个activity就是MainActivity // Fragment创建 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mActivity = getActivity();// 获取当前fragment所依赖的activity } // 初始化fragment的布局 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = initView(); return view; } // fragment所依赖的activity的onCreate方法执行结束 @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); // 初始化数据 initData(); } // 初始化布局, 必须由子类实现 public abstract View initView(); // 初始化数据, 必须由子类实现 public abstract void initData();
2.创建fragment_left_menu(left_menu和activity_main布局用framelayout)
布局:……..
逻辑:
`public class LeftMenuFragment extends BaseFagment {
@Override
public View initView() {
View view = View.inflate(mActivity, R.layout.fragment_left_menu, null);
return view;
}
@Overridepublic void initData() {}
}`
3.创建fragment_content
布局:……
逻辑:…….
4.主页面处理
/** * 初始化fragment */ private void initFragment() { FragmentManager fm = getSupportFragmentManager(); FragmentTransaction transaction = fm.beginTransaction();// 开始事务 transaction.replace(R.id.fl_left_menu, new LeftMenuFragment(), TAG_LEFT_MENU);// 用fragment替换帧布局;参1:帧布局容器的id;参2:是要替换的fragment;参3:标记 transaction.replace(R.id.fl_main, new ContentFragment(), TAG_CONTENT); transaction.commit();// 提交事务 // Fragment fragment = // fm.findFragmentByTag(TAG_LEFT_MENU);//根据标记找到对应的fragment }}
二.底部导航栏
主页面由viewpager和radiogroup,radiobutton构成
新闻主页面开发:
布局
<RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bottom_tab_bg" android:orientation="horizontal"> <RadioButton android:id="@+id/rb_home" style="@style/Bottom_Tab_Style" android:drawableTop="@drawable/tab_home_selector" android:checked="true" android:text="首页" /> <RadioButton android:id="@+id/rb_news" style="@style/Bottom_Tab_Style" android:drawableTop="@drawable/tab_video_selector"//选中变红 android:text="视频" /> <RadioButton android:id="@+id/rb_smart" style="@style/Bottom_Tab_Style" android:drawableTop="@drawable/tab_care_selector" android:text="关注" /> <RadioButton android:id="@+id/rb_gov" style="@style/Bottom_Tab_Style" android:drawableTop="@drawable/tab_mine_selector" android:text="登录" /> </RadioGroup>
radiobutton中相同属性定义在style.xml中
<style name="Bottom_Tab_Style"> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">match_parent</item> <item name="android:background">@android:color/transparent</item> <item name="android:button">@null</item> <item name="android:padding">8dp</item> <item name="android:layout_weight">1</item> <item name="android:textColor">@drawable/txt_tab_selector</item> <item name="android:gravity">center</item> </style>
点击按钮变红:(创建xml文件)
图片变红 <item android:drawable="@drawable/b_newdiscover_tabbar_press" android:state_checked="true"/> <item android:drawable="@drawable/b_newdiscover_tabbar"/>
字变红
<item android:color="#000" android:state_checked="true"/><item android:color="#fff"/>
一开始就进入首页
android:checked="true"
1 0
- 新闻类客户端第二天——fragment搭建基本UI
- 新闻客户端第二天——标签页viewpager创建
- [Android Exercise]Fragment新闻客户端例子拆解PART.1—带你记忆Fragment的使用
- [Android Exercise]Fragment新闻客户端例子拆解PART.2—带你记忆Fragment的使用
- [Android Exercise]Fragment新闻客户端例子拆解PART.3—带你记忆Fragment的使用
- 《『若水新闻』客户端开发教程》——03.设计新闻分类UI(1)
- 《『若水新闻』客户端开发教程》——04.设计新闻分类UI(2)
- 《『若水新闻』客户端开发教程》——05.设计新闻列表UI
- 《『若水新闻』客户端开发教程》——06.设计新闻内容UI
- 《『若水新闻』客户端开发教程》——07.升级新闻内容UI
- 《『若水新闻』客户端开发教程》——08.设计新闻回复UI
- 案例—新闻客户端
- 简单仿照主流新闻客户端界面一(基本框架搭建)
- 案例——新闻客户端
- 案例——新闻客户端
- Android案例—新闻客户端
- Fragment实例精讲——新闻(购物)类App列表Fragment的简单实现
- Android例子—Fragment实例讲解—新闻(购物)类App列表Fragment的简单实现
- Ubuntu 14.04 安装 JDK 8,ubuntu14.04(h用 ok))
- 【Python】图片处理之“PythonMagick”库简易安装笔记
- 移动端网络优化
- 停止、重新启动Activity
- Ubuntu下boost库的编译安装步骤及卸载方法详解
- 新闻类客户端第二天——fragment搭建基本UI
- org.hibernate.InvalidMappingException: Unable to read XML原因及解决办法
- xcode8 ios10.0 xib布局之后设置圆角之后控件消失
- 树形DP专题
- 输入三个字符,按照ASCLL码顺序输出
- 定制Ubuntu桌面
- python sklearn安装的一些有帮助的链接
- Caffe + Ubuntu 15.04(16.04) + CUDA 7.5(8) 新手安装配置指南 转载至宇宙骑士欧老师(http://blog.csdn.net/shiorioxy)
- 把元素移到原点