Recyclerview 单行 多行 listView GridView
来源:互联网 发布:运动keep是什么软件 编辑:程序博客网 时间:2024/06/05 12:42
1.Activtiy{
public class FirstActivity extends Activity {
private RecyclerView recyclerView;
private List<String> list;
private SimpleRecycleAdapter simpleRecycleAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
//获取控件
recyclerView = findViewById(R.id.recycler_view);
//数据
list = new ArrayList<>();
for (int i=0; i<1000;i++){
list.add("这是条目"+i);
}
//5.必须要指定布局管理器
recyclerView.setLayoutManager(new LinearLayoutManager(FirstActivity.this,LinearLayoutManager.VERTICAL,false));
//2.设置适配器展示
simpleRecycleAdapter = new SimpleRecycleAdapter(FirstActivity.this, list);
recyclerView.setAdapter(simpleRecycleAdapter);
}
//点击事件
//listView
public void listView(View view) {
recyclerView.setLayoutManager(new LinearLayoutManager(FirstActivity.this,LinearLayoutManager.VERTICAL,false));
simpleRecycleAdapter.notifyDataSetChanged();
}
//gridView
public void gridView(View view) {
recyclerView.setLayoutManager(new GridLayoutManager(FirstActivity.this,3));
simpleRecycleAdapter.notifyDataSetChanged();
}
//单行
public void hengXinag(View view) {
recyclerView.setLayoutManager(new LinearLayoutManager(FirstActivity.this,LinearLayoutManager.HORIZONTAL,false));
simpleRecycleAdapter.notifyDataSetChanged();
}
//多行
public void hengxiangDuoHang(View view) {
recyclerView.setLayoutManager(new GridLayoutManager(FirstActivity.this,3, OrientationHelper.HORIZONTAL,false));
simpleRecycleAdapter.notifyDataSetChanged();
}
}
2. 主页面布局
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:onClick="listView"
android:text="ListView"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content" />
<Button
android:onClick="gridView"
android:text="GridView"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content" />
<Button
android:onClick="hengXinag"
android:text="单行"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content" />
<Button
android:onClick="hengxiangDuoHang"
android:text="多行"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content" />
</LinearLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.RecyclerView>
3.Adapter 配置
public class SimpleRecycleAdapter extends RecyclerView.Adapter<SimpleHolder> {
private List<String> list;
private Context context;
public SimpleRecycleAdapter(Context context, List<String> list) {
this.context = context;
this.list = list;
}
//....回想listView的优化,,,1.创建viewHolder....2.与条目的视图进行绑定的
//onCreateViewHolder...创建一个ViewHolder....根据条目的视图创建自己的holder对象
@Override
public SimpleHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//inflater...条目的视图
View view = LayoutInflater.from(context).inflate(android.R.layout.simple_list_item_1, parent, false);
SimpleHolder holder = new SimpleHolder(view);
return holder;
}
/**
* onBindViewHolder 绑定上viewHolder之后的操作...主要是赋值(textView,button,checkBox...)的操作
* @param holder
* @param position
*/
@Override
public void onBindViewHolder(SimpleHolder holder, int position) {
holder.textView.setText(list.get(position));
}
/**
* 条目的数量
* @return
*/
@Override
public int getItemCount() {
return list.size();
}
}
4.Horder配置
public class SimpleHolder extends RecyclerView.ViewHolder {
public TextView textView;
public SimpleHolder(View itemView) {
super(itemView);
textView = itemView.findViewById(android.R.id.text1);
}
}
- Recyclerview 单行 多行 listView GridView
- recyclerView单行 多行 listView GridView
- RecyclerView-干掉Listview和GridView
- 万能适配器 listview gridview RecyclerView
- RecyclerView与ListView,GridView区别
- ListView、GridView、RecyclerView的使用
- RecyclerView的基本用法与四种数据展示(listview,griderview,单行,多行)
- RecyclerView--实现 ListView,GridView,瀑布流 效果
- Android RecyclerView之代替ListView与GridView
- RecyclerView代替Listview Gridview 瀑布流
- Android RecyclerView 实现ListView GridView混排
- RecyclerView android5.0之后替换listview、gridview
- RecyclerView 与ListView、GridView的区别
- RecyclerView下实现 ListView GridView 混排
- 使用RecyclerView实现ListView,GridView效果
- RecyclerView实现ListView和GridView的效果
- RecyclerView实现ListView、GridView、瀑布流
- Android | ListView 、GridView 和 RecyclerView 概述
- HBase命令笔记
- linux学习1
- SQLServer2008把数据导出成可执行的sql脚本
- java8新特性
- 快学Scala-类、对象、继承、特质
- Recyclerview 单行 多行 listView GridView
- bzoj3224 Tyvj 1728 普通平衡树 ( 替罪羊树)
- Wannafly挑战赛4 C割草机 模拟
- android 懒人教程:一步步开发android studio 模板插件
- Android调用摄像头取像
- 3. ROS编程入门—Wall Following
- Top-down design——解决问题的基本法
- android最新版关于.so文件的制作封装与跨平台引用
- NIO详解 五