RecyclerView的基本创建
来源:互联网 发布:jdk windows x64 下载 编辑:程序博客网 时间:2024/06/06 12:48
线性显示 类似于listview:
线性宫格显示 类似于grid view:
用线性宫格显示 类似于瀑布流:
结构图:
测试代码:
activity_main.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerHorizontal="true" android:layout_centerVertical="true" /></RelativeLayout>activity_main.xml
MainActivity.java:
package com.zzw.testrecyclerview;import android.app.Activity;import android.os.Bundle;import android.support.v7.widget.GridLayoutManager;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.OrientationHelper;import android.support.v7.widget.RecyclerView;import android.support.v7.widget.RecyclerView.Adapter;import android.support.v7.widget.StaggeredGridLayoutManager;import android.widget.TextView;public class MainActivity extends Activity { RecyclerView mRecyclerView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String[] mTitles = new String[100]; for (int i = 0; i < 99; i++) { mTitles[i] = "测试数据" + i; } mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view); // 这里用线性显示 类似于listview// mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); // 这里用线性宫格显示 类似于grid view// mRecyclerView.setLayoutManager(new GridLayoutManager(this,3)); // 这里用线性宫格显示 类似于瀑布流 mRecyclerView.setLayoutManager(new StaggeredGridLayoutManager(2, OrientationHelper.VERTICAL)); NormalRecyclerViewAdapter adapter = new NormalRecyclerViewAdapter(this, android.R.layout.simple_list_item_1, mTitles); mRecyclerView.setAdapter(adapter); }}
NormalRecyclerViewAdapter.java:
package com.zzw.testrecyclerview;import android.content.Context;import android.support.v7.widget.RecyclerView.Adapter;import android.support.v7.widget.RecyclerView.ViewHolder;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.TextView;public class NormalRecyclerViewAdapter extends Adapter<NormalRecyclerViewAdapter.NormalTextViewHolder> { private final LayoutInflater mLayoutInflater; private final Context mContext; private String[] mTitles; public NormalRecyclerViewAdapter(Context context, int item_id, String[] Titles) { mContext = context; mTitles = Titles; mLayoutInflater = LayoutInflater.from(context); } @Override public int getItemCount() { return mTitles == null ? 0 : mTitles.length; } @Override public NormalTextViewHolder onCreateViewHolder(ViewGroup arg0, int arg1) { return new NormalTextViewHolder(mLayoutInflater.inflate( android.R.layout.simple_list_item_1, null)); } @Override public void onBindViewHolder(NormalTextViewHolder holder, int position) { holder.mTextView.setText(mTitles[position]); } public static class NormalTextViewHolder extends ViewHolder { TextView mTextView; public NormalTextViewHolder(View view) { super(view); mTextView=(TextView) view.findViewById(android.R.id.text1); view.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Log.d("NormalTextViewHolder", "onClick--> position = " + getPosition()); } }); } }}
相关问题解决:
使用android.support.v7.widget.RecyclerView出现 java.lang.reflect.InvocationTargetException:http://www.cnblogs.com/zzw1994/p/5004564.html
0 0
- RecyclerView的基本创建
- RecyclerView的基本用法
- RecyclerView的基本使用
- RecyclerView的基本用法
- RecyclerView的基本使用
- RecyclerView的基本用法
- RecyclerView的基本使用
- RecyclerView的基本使用方法
- RecyclerView的基本使用
- RecyclerView的基本用法
- RecyclerView的基本用法
- RecyclerView的基本使用
- RecyclerView的基本用法
- RecyclerView的基本用法
- RecyclerView的基本使用方法
- RecyclerView的基本使用
- RecyclerView的基本使用
- RecyclerView的基本用法
- FZU 2214 Knapsack problem
- C++最佳编程实践
- linux系统kill和启动tomcat
- Android Material Design:基于CoordinatorLayout实现向上滚动导航条ToolBar滚出、向下滚动导航条滚出
- xmpp的简单使用
- RecyclerView的基本创建
- 【C++】学籍管理系统
- Java 失宠于 Oracle,未来会怎样?
- Kruskal——求无向图的最小生成树+并查集
- windows下 Tomcat 7 + solr3.6.2 + Magento企业版1.14 配置说明
- Java 程序员们值得一看的好书推荐
- Ubuntu下gradle运行卡住,出现Exception in thread "png-cruncher_2"错误的解决办法
- 15北京师范大学新生同步赛F题
- JeeWx 捷微 2.2 发布,微信管家平台