android studio 1.2.1.1
首先配置下v7的库
dependencies {
compile 'com.android.support:recyclerview-v7:22.2.0'
}
public class RecyclerViewActivity extends Activity { private RecyclerView recycler; private RecyclerView.LayoutManager mLayoutManager; private List<HashMap<String,Object>> data; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.recyclerview); recycler = (RecyclerView) findViewById(R.id.recycler); //创建一个布局管理器 mLayoutManager = new LinearLayoutManager(this); //设置布局管理器 recycler.setLayoutManager(mLayoutManager); data = new ArrayList<>(); //初始化数据 for(int i = 0 ; i < 60 ;i++){ HashMap<String,Object> hashMap = new HashMap<>(); if(i%3 == 0){ hashMap.put("imageView",R.drawable.logo_wechat); }else if(i%3 == 1){ hashMap.put("imageView",R.drawable.logo_twitter); }else if(i%3 == 2){ hashMap.put("imageView",R.drawable.logo_whatsapp); } hashMap.put("textView","第" + i + "个"); data.add(hashMap); } //设置Adapter recycler.setAdapter(new MyAdapter(data)); } class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder>{ private List<HashMap<String,Object>> datas; private View view; public MyAdapter(List<HashMap<String,Object>> datas){ this.datas = datas; } @Override public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) { //初始化布局 view = LayoutInflater.from(RecyclerViewActivity.this).inflate(R.layout.recycle_item,null); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder vh, int i) { // 绑定数据到ViewHolder上 HashMap<String,Object> hashMap = datas.get(i); vh.imageView.setImageResource(Integer.valueOf(hashMap.get("imageView").toString())); vh.textView.setText(hashMap.get("textView").toString()); } @Override public int getItemCount() { return datas.size(); } //实现ViewHolder与view分离 class ViewHolder extends RecyclerView.ViewHolder{ ImageView imageView; TextView textView; public ViewHolder(View itemView) { super(itemView); imageView = (ImageView) itemView.findViewById(R.id.imageView); textView = (TextView) itemView.findViewById(R.id.textView); } } } }
activity布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.RecyclerView android:id="@+id/recycler" android:scrollbars="vertical" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout> item布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageView"/> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=""/> </LinearLayout>
相关推荐
在Android开发中,RecyclerView是一个非常重要的组件,它用于展示可滚动的列表,具有高效的数据管理和灵活的布局管理器。RecyclerView是对ListView的优化和扩展,旨在提高性能和用户体验。本篇文章将详细讲解Android...
提供的"RecyclerViewDemo"项目是一个简单的RecyclerView入门示例,它展示了如何创建一个基本的RecyclerView,同时添加点击事件。通过查看该项目的代码,我们可以学习到如何配置RecyclerView的基本结构,以及如何实现...
在Android应用开发中,RecyclerView是一个强大的列表视图组件,尤其适用于展示大量数据并需要高效滚动性能的情况。自Android 5.0(Lollipop)引入Material Design设计语言以来,RecyclerView成为开发者首选的列表...
【Android 安卓入门Demo详解】 Android 是一种广泛使用的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。本入门Demo提供了全面的学习资源,涵盖了Android开发中的基础元素和关键概念,帮助初学者快速...
SwipeRefreshLayout结合RecyclerView实现下拉刷新和滑动加载更多 现在很多界面都是要求,下拉刷新,列表项目更多的时候,滑动加载更多,就像微信朋友圈一样,下拉...代码中有详细注释,希望对刚入门的初学 者有所帮助
Tuts+ 教程:Android 上的 RecyclerView 和 CardView 入门 讲师:Hathibelagal Ashraff Android Lollipop 引入了两个新的小部件,RecyclerView 和 CardView。 在本教程中,您将学习如何使用这些小部件快速创建外观...
SwipeRefreshLayout结合RecyclerView实现下拉刷新和向上滑动“加载更多”功能 现在很多界面都是要求,下拉刷新,列表项目多的时候,滑动加载更多,就像微信朋友...代码里都有详细注释,希望对和我一样刚入门的有所帮助
在上一篇Android RecylerView入门教程中提到,RecyclerView不再负责Item视图的布局及显示,所以RecyclerView也没有为Item开放OnItemClick等点击事件,这就需要开发者自己实现。博客最下面有Demo程序运行动画。 奉上...
在“0基础Android入门项目”中,初学者可以学习到Android开发的基本概念和技术,这个项目涵盖了几个关键的Android组件和视图。以下是该项目涉及的主要知识点: 1. **登录功能**:登录界面是许多应用程序的基础部分...
在build.gradle中的示例入门:存储库{jcenter()}依赖项{compi SnappySmoothScroller一个Android库,可在RecyclerView中进行快速平滑的滚动。 在build.gradle中的示例入门:存储库{jcenter()}依赖项{编译'...
此外,还要学习如何处理用户输入,使用Adapter将数据绑定到ListView、RecyclerView等可滚动视图,以及如何实现动画效果。 Android应用与服务器通信通常采用HTTP/HTTPS协议,涉及网络请求库如OkHttp、Retrofit。JSON...
《Jetpack架构组件从入门到精通》是一本深入解析Android开发中Jetpack架构组件的教程。Jetpack是Google推出的一套全面的工具包,旨在简化Android应用开发,提高代码质量和可维护性。这本书将带你逐步了解和掌握这个...
最后,将这些信息展示在ListView或RecyclerView中,提供用户友好的界面。这一过程能帮助开发者熟悉Android与网络交互的能力,以及数据处理和UI设计。 其次,我们关注的是Android常用控件的使用。Android SDK提供了...
多类型 为Android RecyclerView创建多种类型更容易,更灵活。 以前,当我们需要开发复杂的...入门 在您的build.gradle : 多型已经重建基于 。 如果您仍在使用android支持库,请使用me.drakeet.multitype:multitype:
在这个入门示例中,重点聚焦于如何使用Kotlin来构建一个包含`RecyclerView`、`Adapter`以及`CardView`的Android应用。 Kotlin是一种由JetBrains开发的静态类型编程语言,它被广泛用于Android应用开发,因为它具有...
此外,还要学习使用Fragment来管理多屏幕适配,以及使用Adapter来连接数据与视图,如ListView和RecyclerView。 进入实战阶段,你需要熟悉Android的各种API,包括传感器、网络通信、多媒体处理、数据库SQLite等。...
Android RecyclerView示例 该示例演示了如何使用RecyclerView通过...入门 本示例使用Gradle构建系统。 要构建此项目,请使用“ gradlew build”命令或在Android Studio中使用“导入项目”。 支持 堆栈溢出: :
此外,文档还会涉及用户界面设计,包括Material Design设计规范,以及使用ConstraintLayout、RecyclerView等组件创建响应式界面。同时,会讲解如何利用Intent进行组件间的通信,以及如何处理用户的输入事件。 在...