首页 > 其他分享 >android实现网格布局

android实现网格布局

时间:2022-10-23 20:58:53浏览次数:72  
标签:foreground launcher 布局 网格 import android drawable ic

效果图

 

 添加依赖

implementation 'com.github.mtjsoft:GridPager:v3.7.0'

layout文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <cn.mtjsoft.www.gridviewpager_recycleview.GridViewPager
        android:id="@+id/gridviewpager"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:pager_MarginTop="10dp"
        app:pager_MarginBottom="0dp"
        app:verticalSpacing="10dp"
        app:img_width="44dp"
        app:img_height="44dp"
        app:text_color="@color/black"
        app:text_size="12sp"
        app:imgtext_margin="5dp"
        app:row_count="2"
        app:column_count="4"
        app:pager_loop="true"
        app:point_is_show="true"
        app:point_width="15dp"
        app:point_height="2dp"
        app:point_is_circle="false"
        app:point_margin="2dp"
        app:point_normal_color="@color/white"
        app:point_select_color="#f00"
        app:point_margin_page="10dp"
        app:point_margin_bottom="10dp"
        app:background_color="@color/white">

    </cn.mtjsoft.www.gridviewpager_recycleview.GridViewPager>

    <cn.mtjsoft.www.gridviewpager_recycleview.GridViewPager
        android:id="@+id/gridviewpager2"
        android:layout_marginTop="10dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </cn.mtjsoft.www.gridviewpager_recycleview.GridViewPager>

</LinearLayout>

MainActivity文件

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import cn.mtjsoft.www.gridviewpager_recycleview.GridViewPager;

public class MainActivity extends AppCompatActivity {
    private String[] titles = {"美食", "电影", "酒店住宿","美食", "电影", "酒店住宿"};
    private int[] iconS = {R.drawable.ic_launcher_foreground,R.drawable.ic_launcher_foreground,R.drawable.ic_launcher_foreground,R.drawable.ic_launcher_foreground,R.drawable.ic_launcher_foreground,R.drawable.ic_launcher_foreground};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        GridViewPager gridViewPager = findViewById(R.id.gridviewpager);
        gridViewPager
                // 设置数据总数量
                .setDataAllCount(titles.length)
                // 设置背景图片(此时设置的背景色无效,以背景图片为主)
                // 数据绑定
                .setImageTextLoaderInterface(new GridViewPager.ImageTextLoaderInterface() {
                    @Override
                    public void displayImageText(ImageView imageView, TextView textView, int position) {
                        // 自己进行数据的绑定,灵活度更高,不受任何限制
                        imageView.setImageResource(iconS[position]);
                        textView.setText(titles[position]);
                    }
                })
                // Item点击
                .setGridItemClickListener(new GridViewPager.GridItemClickListener() {
                    @Override
                    public void click(int position) {
                        Toast.makeText(getBaseContext(), "点击了" + titles[position] + position, Toast.LENGTH_SHORT).show();
                    }
                }).show();
    }

}

GitHub地址 下载前给star

标签:foreground,launcher,布局,网格,import,android,drawable,ic
From: https://www.cnblogs.com/Frank-dev-blog/p/16819482.html

相关文章

  • Android 获取应用使用情况
    效果图   先建个Unit文件夹,把下面的文件都放进去创建文件DateTransUtilspackagecn.xrick.applicationusetime.Unit;importandroid.util.Log;importjava......
  • android实现pdf阅读器
    添加依赖implementation'com.github.barteksc:android-pdf-viewer:3.1.0-beta.1'MainActivity文件importandroidx.appcompat.app.AppCompatActivity;importan......
  • android获取传感器数据
    效果图  MainActivity源码importandroidx.appcompat.app.AppCompatActivity;importandroid.annotation.SuppressLint;importandroid.content.Context;impor......
  • Android实现类似微信的设置界面
    效果图  导入包implementation'de.hdodenhof:circleimageview:3.1.0'implementation'com.leon:lsettingviewlibrary:1.7.0'layout文件<?xmlversio......
  • android实现全局字体
    效果图  在theme中添加  <itemname="android:fontFamily">@font/a</item> res目录下面创建font,放入名字为a.ttf的字体在manifest中用这个theme即可全局......
  • Android RecyclerView使用ListAdapter高效刷新数据
    原文:AndroidRecyclerView使用ListAdapter高效刷新数据-Stars-One的杂货小窝我们都知道,当RecyclerView数据源更新后,还需要通过adapter调用对应的方法,从而让Recycl......
  • Android使用rxjava
    导入包implementation"io.reactivex.rxjava2:rxjava:2.2.10"implementation"io.reactivex.rxjava2:rxandroid:2.0.2"使用privatevoidexecuteAsyncTask(......
  • android实现插件化
    新建项目新建一个项目,然后在项目中添加一个项目和一个module   主项目中添加HookManagerimportstaticandroid.os.Environment.DIRECTORY_DOWNLOADS;importa......
  • android实现一键锁屏
    创建AdminReceiverimportandroid.app.admin.DeviceAdminReceiver;publicclassAdminReceiverextendsDeviceAdminReceiver{}在xml中创建device_admin.xml<?xm......
  • android播放60帧动画
    implementation'com.airbnb.android:lottie:4.2.0'导入上面的包下载动画文件json放入assets中布局文件代码 <com.airbnb.lottie.LottieAnimationView......