Android之RecycleView(1)
build.gradle引入包,compile ‘com.android.support:design:25.3.1’
RecycleActivity以及布局文件
package com.example.test0508.RecyclerView;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;import com.example.test0508.R;public class RecycleViewActivity extends AppCompatActivity {private Button mBtnLinear;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_recycle_view);mBtnLinear = findViewById(R.id.btn_recl_linear);mBtnLinear.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Intent intent = new Intent(RecycleViewActivity.this,LinearRecycleViewActivity.class);startActivity(intent);}});}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"android:padding="10dp"><!-- 类似于ListView的功能--><Buttonandroid:id="@+id/btn_recl_linear"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="列表视图"android:textSize="20sp"/></LinearLayout>
LinearRecycleViewActivity以及页面布局
package com.example.test0508.RecyclerView;import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;import android.content.Context;
import android.graphics.Rect;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;import com.example.test0508.R;import java.util.List;public class LinearRecycleViewActivity extends AppCompatActivity {private RecyclerView mRvmain;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_linear_recycle_view);mRvmain = findViewById(R.id.rv_main);mRvmain.setLayoutManager(new LinearLayoutManager(LinearRecycleViewActivity.this));/*添加分割线*/mRvmain.addItemDecoration(new MyDecoration());mRvmain.setAdapter(new LinearAdaptor(LinearRecycleViewActivity.this, new LinearAdaptor.OnItemClickListener() {@Overridepublic void onClick(int pos) {Toast.makeText(LinearRecycleViewActivity.this,"click"+pos,Toast.LENGTH_SHORT).show();}}));}class MyDecoration extends RecyclerView.ItemDecoration{@Overridepublic void getItemOffsets(@NonNull Rect outRect, @NonNull View view, @NonNull RecyclerView parent, @NonNull RecyclerView.State state) {super.getItemOffsets(outRect, view, parent, state);outRect.set(0,0,0,getResources().getDimensionPixelOffset(R.dimen.dividerHeight));}}}/*** ******************************************************************************************* 线性布局的adaptor**/class LinearAdaptor extends RecyclerView.Adapter<LinearAdaptor.LinearViewHolder>{private Context mContext;private OnItemClickListener mListener; //回调private List<String> list;public LinearAdaptor(Context context,OnItemClickListener listener){this.mContext = context;this.mListener = listener;}@NonNull@Overridepublic LinearAdaptor.LinearViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {return new LinearViewHolder(LayoutInflater.from(mContext).inflate(R.layout.layout_linear_item,parent,false));}@Overridepublic void onBindViewHolder(@NonNull LinearAdaptor.LinearViewHolder holder, final int position) {holder.textView.setText("我是修改的标题");/*设置点击事件*/holder.itemView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {mListener.onClick(position);}});}@Overridepublic int getItemCount() {return 30;}class LinearViewHolder extends RecyclerView.ViewHolder{private TextView textView;public LinearViewHolder(@NonNull View itemView) {super(itemView);textView = itemView.findViewById(R.id.tv_linear_title);}}public interface OnItemClickListener{void onClick(int pos);}}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"><androidx.recyclerview.widget.RecyclerViewandroid:id="@+id/rv_main"android:layout_width="match_parent"android:layout_height="wrap_content"android:background="@color/colorGreen"/></RelativeLayout>
这个的item
<?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="wrap_content"android:background="#ffffff"><TextViewandroid:id="@+id/tv_linear_title"android:layout_width="match_parent"android:layout_height="50dp"android:gravity="center_horizontal"android:textSize="29sp"android:textColor="@color/colorBlack"/></LinearLayout>
Android之RecycleView(1)相关推荐
- android 悬浮按钮 魅族,Android使用RecycleView实现魅族手机通讯录界面
原标题:Android使用RecycleView实现魅族手机通讯录界面 本文作者 本文由_小马快跑_投稿. _小马快跑_的博客地址: http://www.jianshu.com/u/18502855 ...
- android开发——RecycleView
功能要求 1.在上一个界面中的微信发现tab页面中添加RecyclerView,以新闻列表页面为例 2.在该基础上进行点击跳转设计,即点击某一行能够跳转到新闻详情页面. 设计流程 创建适配器Recyc ...
- 【Android】RecycleView简单仿漫画APP图片相关样式
真的真的想不到起什么标题好了,这次的内容真的是太简单了,没有什么挑战性,一天以内就完成了.最近在学kotlin,也会有一份kotlin的代码,鉴于很多人都是从java开始进行android开发的,ko ...
- Android基础——RecycleView
RecycleView RecycleView是什么? RecycleView使用 瀑布流滚动 横向滚动 RecycleView点击事件 RecycleView是什么? RecycleView是进阶版 ...
- Android 使用RecycleView制作头像堆叠效果
效果如下: 代码如下: 这里给出部分关键代码 逻辑代码: //反方向排列recycleView.layoutManager = LinearLayoutManager(this, LinearLayo ...
- Android之RecycleView实现指定范围的拖动效果
1 问题 在RecycleView里面实现指定位置的拖动效果,(这里是实现线性布局的,不是网格布局的) @Overridepublic boolean onMove(RecyclerView recy ...
- android onscrolllistener判断到底部,android中RecycleView添加下滑到底部的监听示例
我们的日常开发中经常用到下拉刷新,而网上评价最好的开源下拉刷新组件当然还是android-Ultra-Pull-To-Refresh此组件可以给任何的控件添加下拉刷新功能.当然也包括recyclevi ...
- Android 自定义RecycleView实现多级树(类似qq分组列表)
由于工作需要开发一个类似qq分组列表功能,所以就自定义RecycleView来实现功能 效果图: 自定义View: import java.util.ArrayList; import java.ut ...
- ▲ Android 使用RecycleView自定义日历签到效果
最近公司又要求做一个签到日历效果,我为啥加个又是之前我实现了一个日历签到效果,而这次我使用的则是RecycleView去实现. 先上效果图 实现思路 初始化日历数据,把数据传入到适配器中并显示. 至于 ...
最新文章
- cache-control_网站 cache control 最佳实践
- GDCM:gdcm::Attribute的测试程序
- Nginx_location配置讲解
- java8 supplier 接口
- LeetCode 416. 分割等和子集(动态规划)
- 【OP放大器】在不拆开OP放大器的情况下查一查它是否坏掉或饱和。
- 【华为云技术分享】智能诊断和优化,华为云DAS服务云DBA平台让您无忧运维
- [Melodymood][流行经典]Take Me to your heart 《吻别》英文版
- 三星Galaxy Note10+最后的爆料:配备更大的S-Pen手写笔
- 简述网卡的作用和工作原理_发电机调节器的作用及工作原理
- 老是说我编译版本不够_编译etcd出现的cannot load bufio的错误解决办法
- CRMEB首届UI设计大赛报名啦!
- 阿里云商标注册流程步骤-阿里云商标自助注册申请步骤...
- Maven clean基本命令
- RabbitMQ3.10.7高级特性
- 一文带你深入浅出C语言数组
- Ubuntu 16.04安装Synaptic Package Manager图形化APT管理工具
- 面试是人生走向成功的第一步,你是怎样面对面试的呢?
- 手机中毒变“肉鸡” 个人信息1元贱卖
- 世界主要国家和城市经纬度(2023年3月14日整理)