Android Fragment RecycleListView
1、新建SuperActivity
package com.example.ting.criminalintentpractise; import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager; /**
* Created by ting on 17/3/20.
*/ public abstract class SuperFragmentActivity extends FragmentActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragmentlistactivity); //加载activity的样式文件,里面包含一个FragmentLayout
FragmentManager fm=getSupportFragmentManager(); //获取Fragment管理器
Fragment fragment=fm.findFragmentById(R.id.mainfragment); //判断是否被加载过
if (fragment == null){
fragment=createFragment(); //创建对象
fm.beginTransaction().add(R.id.mainfragment,fragment).commit(); //提交管理器
}
}
public abstract Fragment createFragment();
}
2、新建FragmentActivity
public class FragmentListActivity extends SuperFragmentActivity{
@Override
public Fragment createFragment() {
return new StudentListFragment(); //为super创建指向的Fragment
}
}
3、创建Fragment
public class StudentListFragment extends Fragment {
private TextView mNameTextView;
private TextView mAgeTextView;
private List<Student> mStudents;
@Nullable
@Override
//覆盖onCreateView 方法,返回View.
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view=inflater.inflate(R.layout.recyclistview, container,false); //绑点Fragment对应的样式文件
RecyclerView recyclerView= (RecyclerView) view.findViewById(R.id.recycleview); //获取样式文件中的RecycleView
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); //为RecycleView绑定样式管理器
recyclerView.setAdapter(new RecycleAdpter()); //为RecycleView绑定适配器
return view;
}
//建立内部类,实现Adapter
private class RecycleAdpter extends RecyclerView.Adapter<RecyclerViewHolder> {
@Override
public RecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
LayoutInflater inflater=LayoutInflater.from(getActivity()); //通过LayoutInflater 获取统一的inflater
View v=inflater.inflate(R.layout.studentview,parent,false); //通过获取的inflater加载 listview 的xml样式
return new RecyclerViewHolder(v); //返回生成的Holder
}
@Override
//为每一个listview 注入内容。
public void onBindViewHolder(RecyclerViewHolder holder, int position) {
Student student=mStudents.get(position);
mNameTextView.setText(student.getName());
mAgeTextView.setText(student.getAge()+"");
}
@Override
//获取总的需要显示的数目
public int getItemCount() {
mStudents=StudentList.get();
return mStudents.size();
}
}
//Holder 对生成的listview进行深加工。
private class RecyclerViewHolder extends RecyclerView.ViewHolder{
public RecyclerViewHolder(View itemView) {
super(itemView);
mAgeTextView= (TextView) itemView.findViewById(R.id.age_textview);
mNameTextView= (TextView) itemView.findViewById(R.id.name_textview);
}
}
}
Android Fragment RecycleListView的更多相关文章
- 【Android自学日记】【转】Android Fragment 真正的完全解析(下)
上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Frag ...
- Android Fragment使用(四) Toolbar使用及Fragment中的Toolbar处理
Toolbar作为ActionBar使用介绍 本文介绍了在Android中将Toolbar作为ActionBar使用的方法. 并且介绍了在Fragment和嵌套Fragment中使用Toolbar作为 ...
- Android Fragment使用(三) Activity, Fragment, WebView的状态保存和恢复
Android中的状态保存和恢复 Android中的状态保存和恢复, 包括Activity和Fragment以及其中View的状态处理. Activity的状态除了其中的View和Fragment的状 ...
- Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误
嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...
- Android Fragment使用(一) 基础篇 温故知新
Fragment使用的基本知识点总结, 包括Fragment的添加, 参数传递和通信, 生命周期和各种操作. Fragment使用基础 Fragment添加 方法一: 布局里的标签 标识符: tag, ...
- Android Fragment应用实战
现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上, ...
- Android Fragment 真正的完全解析(下)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37992017 上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和 ...
- Android Fragment
1.Fragment必须是依存与Activity而存在的,因此Activity的生命周期会直接影响到Fragment的生命周期. 2.Fragment 生命周期: 首页 最新文章 在线课程 业界 开发 ...
- Android Fragment应用实战,使用碎片向ActivityGroup说再见
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/13171191 现在Fragment的应用真的是越来越广泛了,之前Android在3 ...
随机推荐
- css 中font属性知识点总结
一. font属性值可以继承.例如子元素可以继承父元素的行高,字体大小等等. 二.font属性可以进行连写:font: font-sytle font-weight font-size/line- ...
- 移动web开发中自己遇到的三个小题及解决方法
大家好! 这是我第二次写随笔感想,有不足之处希望大家提出,我也算的上一个小白,自己进入前端行业也刚刚半年,在这里半年里我遇到一个技术大牛的好领导,让我在项目中学到很多,想和大家分享一下! 一. 移动端 ...
- 使用Eric构建Caffe应用程序-Baby年龄识别
训练好的Caffe网络结构,可以固定下来,直接载入程序作为数据库接口使用.本文使用Eric构建运行于Python环境下的图片识别应用程序,因为Eric使用QT作为GUI,且有Python的接口,可直接 ...
- 使用Storm实现实时大数据分析!
随着数据体积的越来越大,实时处理成为了许多机构需要面对的首要挑战.Shruthi Kumar和Siddharth Patankar在Dr.Dobb's上结合了汽车超速监视,为我们演示了使用Storm进 ...
- spring boot的项目结构问题
问题:spring boot项目能够正常启动,但是在浏览器访问的时候会遇到404的错误,Whitelable Error Page 404 分析及解决方案:首先Application文件要放在项目的外 ...
- JeeSite 4.0 规划(二)
==== 点击放大查看 ==== ==== 点击放大查看 ====
- swift Self
'Self' is the type of a protocol/class/struct/enum.And the 'self' is a instance of a class/struct/en ...
- JDBCUtils 工具类
import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource;import java.io.IOE ...
- 使用ant design pro搭建项目
脚手架搭建 git clone --depth=1 https://github.com/ant-design/ant-design-pro.git my-project 然后 cd my-proje ...
- OA项目知识总结2
BaseAction的抽取 项目中的每个实体类都对应一个action 每个action都都要继承ActionSupport类 已以及实现ModelDriver接口 并且需要注入service 虽然 ...