最近在写一个launcher,于是整理了一下获取应用的工具类和横向的显示所有app的方法。里面使用了横向的recyclerview来显示,内容也很简单。
结尾有源码的下载地址。
allapp.png
1.导入依赖
implementation 'com.android.support:recyclerview-v7:27.1.1'
2.显示布局
注意:这里我使用了px的像素来适配屏幕,这个是适配的一种方式。
如果直接复制可能会报@dimen/x150找不到的错误。
这个在源码的valus里面可以找到。
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical"
tools:context=".MainActivity">
android:id="@+id/recyclerview"
android:layout_width="match_parent"
android:layout_height="@dimen/x150">
android:id="@+id/recyclerviewtwo"
android:layout_marginTop="@dimen/x20"
android:layout_width="match_parent"
android:layout_height="@dimen/x150">
3.适配器
适配器里面的内容很普通,就是把获取到的值进行设置到布局里面。
package com.luo.recyclerviewallapp.adapter;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.luo.recyclerviewallapp.R;
import com.luo.recyclerviewallapp.bean.AppInfo;
import java.util.List;
/**
* Created by luo on 2019/8/12.
*/
public class AllAdapter extends RecyclerView.Adapter {
private View mView;
private List mlist;
private Context mContext;
private VH mVH;
private OnItemClickListener listener;
private OnItemLongClickListener longClickLis