GridView仿微信添加多图效果

基于SpringAI与PGVector构建企业级RAG智能问答系统 检索增强生成(RAG)技术通过结合语义检索与大语言模型生成能力,有效解决了传统关键词搜索语义理解不足与大模型生成“幻觉”的痛点。其核心原理在于将非结构化文本转化为向量嵌入,利用向量数据库进行高维空间的相似性检索,从而为大模型提供精准的上下文参考。这项技术的核心价值在于,它能以较低成本将企业内部分散、非结构化的知识(如文档、手册、对话记录)转化为可被精准查询和利用的“记忆”,是实现知识管理从“存”到“用”的关键。在应用场景上,RAG特别适合构建企业专属的智能问答、知识库助手和内部支持系统。本文以**Sprin 阅读详情
如果喜欢栗子系列可以关注哦~各种栗子正在赶来中......

栗子配图(自己设计--栗子icon来自阿里图标库,背景图来自摄图网).png
栗子惯例,先上GIF

栗子GIF.gif

在项目中这种添加⑨图的效果应该是非常常见的,后面有个添加的按钮应该怎么实现,这也许让一部分小白抓狂了吧~来吧,淡漠带你飞,走起~~啦啦啦......

起飞前先说下,本篇只是讲解九宫格添加图片的效果,至于选择图片的效果是别人写的库,我只是接过来做选择图片用的~
  1. 首先这是用GridView实现的
    xml布局就一个GridView
     <GridView
         android:id="@+id/gridView"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:columnWidth="90dp"
         android:gravity="center"
         android:horizontalSpacing="4dp"
         android:numColumns="3"
         android:scrollbars="none"
         android:stretchMode="columnWidth"
         android:verticalSpacing="4dp" />
  2. 接下来看看java代码

     //图片数据,ImageItem是图片选择的库自带的Bean
     private ArrayList<ImageItem> images;
     //adapter是核心,添加按钮的处理删除的处理都在里面,后面会说,别急
     private MultiImageAdapter adapter;
     //初次进入的时候先只传this
     adapter = new MultiImageAdapter(this);
     gridView.setAdapter(adapter);
    
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         if (data != null && requestCode == 3) {
             //判断一下是否有数据,有的话就addAll(),不会覆盖已经有的图
             if(images == null){
                 images = (ArrayList<ImageItem>)
                          data.getSerializableExtra(ImagePicker.EXTRA_RESULT_ITEMS);
             }else{
                 images.addAll((ArrayList<ImageItem>)
                          data.getSerializableExtra(ImagePicker.EXTRA_RESULT_ITEMS));
             }
             //拿到图片数据后把images传过去
             adapter = new MultiImageAdapter(this,images);
             gridView.setAdapter(adapter);
         } else {
             Toast.makeText(this, "没有选择图片", Toast.LENGTH_SHORT).show();
         }
     }
    Ok,Java代码也讲完了,到这里没有什么复杂的吧,添加按钮和删除按钮的处理都在Adapter里面,下面开始说核心的Adapter
  3. 核心Adapter
    先看xml吧

     <?xml version="1.0" encoding="utf-8"?>
     <com.anfq.mylibrary.view.SquareLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="match_parent"
         android:background="#ffffff"
         android:layout_height="match_parent">
         <RelativeLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content">
             <ImageView
                 android:id="@+id/ivIcon"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
                 android:background="@color/colorPrimaryDark"
                 android:scaleType="fitXY" />
             <ImageButton
                 android:id="@+id/ibDelete"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_alignParentEnd="true"
                 android:layout_alignParentRight="true"
                 android:layout_alignParentTop="true"
                 android:background="@null"
                 android:padding="10dp"
                 android:src="@drawable/del" />
         </RelativeLayout>
         <ImageButton
             android:id="@+id/ibAdd"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:layout_centerInParent="true"
             android:background="#eeeeee"
             android:src="@drawable/add"
             android:visibility="gone" />
     </com.anfq.mylibrary.view.SquareLayout>

    xml也不复杂,最外层的SquareLayout是一个让GridView显示的Item为正方形的处理,RelativeLayout里有个ImageView这个是用来展示图片的,ImageButton是删除的按钮;然后外面ImageButton是添加按钮,设置了隐藏属性android:visibility="gone",只有在需要的时候才把添加按钮召唤出来,添加完9个图片的时候是没有添加按钮的。

    把SquareLayout的代码也插上吧~

     public class SquareLayout extends RelativeLayout {
         public SquareLayout(Context context, AttributeSet attrs, int defStyle) {
             super(context, attrs, defStyle);
         }
         public SquareLayout(Context context, AttributeSet attrs) {
             super(context, attrs);
         }
         public SquareLayout(Context context) {
             super(context);
         }
         @SuppressWarnings("unused")
         @Override
         protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
             setMeasuredDimension(getDefaultSize(0, widthMeasureSpec),
                     getDefaultSize(0, heightMeasureSpec));
             int childWidthSize = getMeasuredWidth();
             int childHeightSize = getMeasuredHeight();
             // 高度和宽度一样
             heightMeasureSpec = widthMeasureSpec = MeasureSpec.makeMeasureSpec(
                     childWidthSize, MeasureSpec.EXACTLY);
             super.onMeasure(widthMeasureSpec, heightMeasureSpec);
         }
     }

    Adapter来了

     public class MultiImageAdapter extends BaseAdapter {
         private Activity activity;
         private LayoutInflater inflater;
         private ArrayList<ImageItem> mImages;
         //用来判断是否是刚刚进入,刚进入只显示添加按钮,也就是上面java代码中只传this的时候
         private boolean is = false;
         ImagePicker imagePicker = ImagePicker.getInstance();
         public MultiImageAdapter(Activity activity, ArrayList<ImageItem> images) {
             this.activity = activity;
             this.inflater = LayoutInflater.from(activity);
             this.mImages = images;
             initImagePicker();//设置图片选择的一些属性
         }    public MultiImageAdapter(Activity activity) {
             this.activity = activity;
             this.inflater = LayoutInflater.from(activity);
             is = true;//设置为true表示第一次初始化
             initImagePicker();//设置图片选择的一些属性
         }
         @Override
         public int getCount() {
             if(!is){
                 //这里判断数据如果有9张就size等于9,否则就+1,+1是为按钮留的位置
                 return mImages.size()==9?mImages.size():mImages.size()+1;
             }
             //没有数据就是1,1是为按钮留的位置
             return 1;
         }
         @Override
         public Object getItem(int position) {
             return mImages.get(position);
         }
         @Override
         public long getItemId(int position) {
             return position;
         }
         @Override
         public View getView(final int position, View view, final ViewGroup parent) {
             ViewHolder holder = null;
             if (null == view) {
                 view = inflater.inflate(R.layout.item_ulti_image, null);
                 holder = new ViewHolder();
                 holder.ivIcon = (ImageView) view.findViewById(R.id.ivIcon);
                 holder.ibAdd = (ImageButton) view.findViewById(R.id.ibAdd);
                 holder.ibDelete = (ImageButton) view.findViewById(R.id.ibDelete);
                 view.setTag(holder);
             } else {
                 holder = (ViewHolder) view.getTag();
             }
             if(!is){
                 //选了图片后会进入这里,先判断下position 是否等于size
                 if(position == mImages.size()){
                     //执行到这里就说明是最后一个位置,判断是否有9张图
                     if(mImages.size() != 9){
                         //没有9张图就显示添加按钮
                         holder.ibAdd.setVisibility(View.VISIBLE);
                     }else{
                         //有就隐藏
                         holder.ibAdd.setVisibility(View.GONE);
                     }
                 }else{
                     //还不是最后一个位置的时候执行这里
                     //隐藏添加按钮,要设置图片嘛~
                     holder.ibAdd.setVisibility(View.GONE);
                     //根据条目位置设置图片
                     ImageItem item = mImages.get(position);
                     Glide.with(activity)
                             .load(item.path)
                             .into(holder.ivIcon);
                 }
                 //删除按钮的点击事件
                 holder.ibDelete.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
                         //移除图片
                         mImages.remove(position);
                         //更新
                         notifyDataSetChanged();
                     }
                 });
             }else{
                 //初次初始化的时候显示添加按钮
                 holder.ibAdd.setVisibility(View.VISIBLE);
             }
             //添加按钮点击事件
             holder.ibAdd.setOnClickListener(new View.OnClickListener() {
                 @Override
                 public void onClick(View v) {
                     //判断是否是初始化进入
                     if(!is){
                         //到这里表示已经选过了,然后用9-size算出还剩几个图的位置
                         imagePicker.setSelectLimit(9-mImages.size());//选中数量限制
                     }
                     //跳转到图片选择
                     Intent intent = new Intent(activity, ImageGridActivity.class);
                     activity.startActivityForResult(intent, 3);
                 }
             });
             return view;
         }
         protected class ViewHolder {
             /** icon */
             protected ImageView ivIcon;
             /** 移除 */
             protected ImageButton ibDelete;
             /**添加 */
             protected ImageButton ibAdd;
         }
         private void initImagePicker() {
             imagePicker.setImageLoader(new GlideImageLoader());   //设置图片加载器
             imagePicker.setShowCamera(true);//显示拍照按钮
             imagePicker.setCrop(true);//允许裁剪(单选才有效)
             imagePicker.setSaveRectangle(true);//是否按矩形区域保存
             imagePicker.setSelectLimit(9);//选中数量限制
             imagePicker.setStyle(CropImageView.Style.CIRCLE);//裁剪框的形状
             imagePicker.setFocusWidth(100);//裁剪框的宽度。单位像素(圆形自动取宽高最小值)
             imagePicker.setFocusHeight(100);//裁剪框的高度。单位像素(圆形自动取宽高最小值)
             imagePicker.setOutPutX(1000);//保存文件的宽度。单位像素
             imagePicker.setOutPutY(1000);//保存文件的高度。单位像素
         }
     }
总结:其实原理就是把数据的size+1,做为添加按钮的放置,然后判断下有9张图就不显示添加按钮,并且size也不+1,就这样,一个带添加按钮的GridView就好了~有什么不懂得可以留言。
在相机或者相机中选择多张图片并展示到gridview 在相机或者相机中选择多张图片并展示到gridview,在很多项目中,都会用到,我写了一个例子,放到这供大家下载,交流 立即下载

相关推荐

android仿微信发朋友圈,拍照上传

android仿微信发朋友圈,调用系统拍照和选择照片activity.

微信小程序view循环添加背景图片

<view class="list-box" bindtap="click" data-id="{{item.id}}" style="background-image:url({{item.cover}})"> </view> 注意:和vue是有区别的不需要v-bind 也不需要使用拼接,在变量处使用{{}}即可使用遍历的参数。 扩展:如果使用的是image标签想要设置相关熟悉,微信小程序内部有相关设置可以直接使用。 https://developers.weixin.qq.c

qq_44523450的博客 3828

Android ListView,Gridview动态加载释放图片资源

在Android开发App中经常会用到ListView和Gridview的item中加载图片显示的情况。但是如果图片多了就会遇到内存溢出的情况,及时你对图片做了缩放处理但是图片张数多了还是一样的会内存溢出。所以这个时候就需要我们动态的释放和加载图片资源。附件中是小弟根据自己的想法实现的动态加载和释放图片,但是有个图片不能动态刷新的问题未能解决。欢迎各位相继完善、探讨和吐糟。若各位有新的想法或实现请发小弟邮箱(592421989@qq.com)一份,小弟学习一下。各位下载项目后在手机SD卡DCIM/Camera/文件夹下可以放300-500张高清图片,就可以测试了。

微信小程序开发中瀑布流布局和图片懒加载

通过调用createIntersectionObserver方法创建交叉观察器,并通过relativeToViewport方法将观察器设置为相对于视口的位置,然后通过observe方法监听.lazy-load类的元素与视口的交叉状态。通过在自定义组件的lifetimes的attached生命周期函数中创建交叉观察器,并通过relativeToViewport方法将观察器设置为相对于视口的位置,然后通过observe方法监听.lazy-load类的元素与视口的交叉状态。可以根据实际需求调整列数和宽度。

qq_67153941的博客 1461

Android GridView仿微信添加多图效果

主要为大家详细介绍了Android GridView仿微信添加多图效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

STM32N6:MCU+NPU架构如何重塑边缘AI部署新范式

STM32N6作为业界首款MCU+NPU架构的通用微控制器,通过集成600 GOPS算力的NPU与800MHz Cortex-M55内核,实现了边缘AI部署的革命性突破。该方案在工业视觉和智能家居等场景中,以超低功耗和成本提供实时AI处理能力,性能较传统MCU提升超100倍,重塑了边缘智能设备的设计范式。

g8f9d0s1a2的博客 1291

Android仿微信图片上传,可以选择多张图片,缩放预览,拍照上传等

仿照微信,朋友圈分享图片功能 。可以进行图片的多张选择,拍照添加图片,以及进行图片的预览,预览时可以进行缩放,并且可以删除选中状态的图片 。很不错的源码,大家有需要可以下载看看 。 微信 微信 微信 微信 下载地址 :微信上传图片源码 很多网友不知道怎么获取图片路径,这里贴出来: String path = Bimp.tem...

weixin_34087301的博客 1423

先进封装Interposer仿真步骤及说明

摘要: Interposer仿真是2.5D/3DIC封装设计的关键环节,涵盖信号完整性(SI)、电源完整性(PI)、热及结构应力分析。流程分为五个阶段:1)前处理,定义层叠结构与材料属性;2)参数提取,通过3D电磁建模获取TSV、传输线等寄生参数;3)仿真设置,选择求解器并设定频率范围;4)结果分析,评估信号损耗、阻抗及电源网络性能;5)后处理,进行多物理场协同仿真并生成模型。核心挑战在于多尺度与多物理场耦合,需优先确保高速信号与电源网络的仿真精度。常用工具包括Ansys HFSS、Cadence Sigr

DSY_0324的博客 1342

android gridview高仿,Android GridView仿微信添加多图效果

本文实例为大家分享了GridView仿微信添加多图效果展示的具体代码,供大家参考,具体内容如下栗子惯例,先上GIF在项目中这种添加⑨图的效果应该是非常常见的,后面有个添加的按钮应该怎么实现,这也许让一部分小白抓狂了吧~来吧,淡漠带你飞,走起~~啦啦啦......起飞前先说下,本篇只是讲解九宫格添加图片的效果,至于选择图片的效果是别人写的库,我只是接过来做选择图片用的~1.首先这是用GridView...

weixin_42131861的博客 349

Qt 【window udp 高频采集丢包问题】

使用Asio + 无锁队列或者环形缓存区方案可以解决 qt udp 在window平台高速采集 (128k)丢包问题。

weixin_45397344的博客 177

我终于停止写 JUnit 了!用 JavaParser + GPT-4 自动生成 90% 覆盖率的单元测试

本文介绍了一种基于JavaParser和GPT-4的智能单元测试生成方案。针对开发者在单元测试编写中面临的繁琐、无聊和硬指标等问题,提出通过AST语法树分析代码结构,提取关键信息后生成精准提示词,再调用GPT-4自动生成高质量的单元测试代码。文章详细阐述了技术原理、实现步骤(包括JavaParser解析、上下文感知提示词构建和GPT-4调用),并展示了该方法能自动识别依赖、Mock对象和覆盖边界条件,显著提升测试效率。同时指出了在复杂数据结构、私有方法测试等方面的局限性,最终强调这种技术组合可以解放开发者,

BUG猿的博客 1127

android仿微信图片编辑库,Android仿微信朋友圈添加图片

github地址(欢迎下载Demo)Paste_Image.png老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧,先把工作完成了,再看也来得及,是吧!仿微信添加图片.gif在项目中这种添加图片上传的效果应该是非常常见的,后面有个添加的按钮应该让有些童鞋不知道咋办了吧,其实没那么复杂,通过GridView就可以实现了先说明一下,这里主要是讲添加图片的效果,至于图片选择器用...

weixin_32073537的博客 672

适航规章、标准,书籍资料下载汇总(增加DO-160G中英文版)

很多读者之前问我有没有DO-160G的资源,现在终于找到啦!如果大家有其他想要的资源,可以在留言区告诉我,有空我会帮大家找找看~文末有下载链接:更新日志:2024-9-28:初版。2024-10-21:增加DO-330英文版PDF下载。2024-10-30:增加DO-160G中文版(非机翻)和英文版PDF下载。以下是一些收集到的适航相关的资料,分享给大家。(如果没有你想要的资料,请留言,等找到会及时更新!

qq_41854911的博客 2756

多图选择(仿微信,陌陌)

整理了下网上的资源,并做了大量修改,美化,完成以下效果,仿微信陌陌多图选择,最多可以选择6张图片,选择完成后,用GridView展示,点击图片可以删除,其实,以此为基础还可以做出更多更炫的效果,不过本代码仅供参考,若有需要,自己可以进行扩展,接下来看效果图: 源码下载地址:http://download.youkuaiyun.com/detail/baiyuliang2013/7749241

白玉梁的专栏 3151

光伏硅片瑕疵检测边缘计算方案:Java+YOLOv11n+GraalVM Native Image+树莓派5部署,工业级高可靠落地

本文提出了一种基于边缘计算的光伏硅片瑕疵检测方案,针对传统人工检测和云端AI方案的不足,采用Java+YOLOv11n+树莓派5的技术路线,实现了低延迟、高可靠的工业级检测。方案核心特点包括: 分层解耦的边缘架构,将感知、推理全链路下沉到树莓派5,端到端延迟<100ms; 创新性技术选型组合:Java 17+ONNX Runtime+GraalVM Native Image,内存占用<200MB; 安防级可靠性设计,支持断网缓存、看门狗守护、异常自动恢复等工业场景需求; 完全基于开源技术栈,硬件

2601_94871597的博客 474

微信小程序 - 实现身份证OCR识别人像面与国徽面并提取字段信息,详解从手机相册选取或打开摄像头拍照上传身份证正反面图片ocr文字识别数据填充表单(提供免费纯前端ocr识别插件+百度OCR识别API)

微信小程序身份证识别,微信小程序身份证拍照、上传并OCR识别,微信小程序实现OCR扫描识别,微信小程序识别身份证免费插件,微信小程序实现身份证识别功能。ocr识别插件。微信身份证拍照后进行ocr识别,微信小程序OCR扫描识别身份证,OCR身份证实名认证+图片上传+拍照上传图片,微信小程序之身份证照片正反上传,小程序OCR身份证识别,微信小程序实现文字识别-ocr插件,微信小程序利用百度AI实现扫描身份证获取信息功能,基于微信小程序OCR插件实现身份证拍照、上传并OCR识别的示例demo,将上传的照片传到服务

🏆 前端领域优质创作者 8133

android仿微信发布动态功能,Android GridView扩展仿微信微博发图动态添加删除图片功能.pdf...

Android GridView扩扩展展仿仿微微信信微微博博发发图图动动态态添添加加删删除除图图片片功功能能这篇文章主要为大家详细介绍了Android GridView扩展仿微信微博发图动态添加删除图片功能,具有一定的参考价值,感兴趣的 伙伴们可以参考一下在平时的开发中,我们会看到不管是微信发朋友圈照片还是微博发布新鲜事,添加图片的时候都是选完后面还有个+号再去选择图片,这样的话比较方便用户去添加...

weixin_34017915的博客 286

备考路上的学习笔记:我的软考高级架构师复盘与更新计划

本专栏基于作者备考软考高级系统架构设计师的真实经验,分为考前突击、基础夯实、核心突破、案例实战和论文通关五大模块。内容涵盖计算机体系结构、操作系统、数据库等核心知识,提供案例解析和论文范文。作者承诺持续更新考纲内容、真题复盘及互动答疑,旨在帮助考生系统备考,将个人踩坑经验转化为实用指南,陪伴考生共同完成从知识碎片到体系构建的蜕变历程。

qq837993702的博客 2294

android之仿朋友圈程序,Android仿微信朋友圈添加图片的实例代码

老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧,先把工作完成了,再看也来得及,是吧!在项目中这种添加图片上传的效果应该是非常常见的,后面有个添加的按钮应该让有些童鞋不知道咋办了吧,其实没那么复杂,通过GridView就可以实现了先说明一下,这里主要是讲添加图片的效果,至于图片选择器用的是第三方库photopicker,6.0权限用的是第三方库EasyPermission...

weixin_35796207的博客 639

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

android 本地图片多选,ANDROID GRIDVIEW仿微信图片多选功能_显示本地相册图片多选效果...

前段时间我分享过一个多图选择器实现了批示图片选择的问题、可以不会把系统的图库那么今天再和大家分享一个非常棒的源代码、实现仿微信的图片选择功能(多图选择哦)话不多说、有图有真像、先上图片 本例子主要实现了以下功能点1、默认显示图片最多的文件夹图片、以及底部显示图片总数量2、点击底部、弹出popupWindow、popupWindow包含所有含有图片的文件夹、以及显示每个文件夹中图片数量3、选择任何文...

weixin_34790159的博客 470

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android 仿微信朋友圈添加图片

github地址(欢迎下载Demo)   https://github.com/zhouxu88/WXCircleAddPic 老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧,先把工作完成了,再看也来得及,是吧! 仿微信添加图片.gif 1、首先这是用GridView实现的 &lt;?xml version="1.0" encodin...

weixin_34167819的博客 1578

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

[Android] 通过GridView仿微信动态添加本地图片

此篇文章主要讲述通过GridView控件实现添加本地图片并显示.主要是关于GridView控件的基本操作,通过调用SimpleAdapter适配器实现实现加载图片,在gridView1.setOnItemClickListener()点击函数中响应不同操作.当点击加号图片(+)时,调用本地相册通过Intent实现获取图片路径存并显示图片,同时能删除图片,希望文章对大家有所帮助.

杨秀璋的专栏 2万+

Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果

写这篇文章之前,先简单说几句,首先是先恭喜下自己获得了2013年的博客之星称号,很意外也很开心,自己是从2013年开始写博客,那时候也不知道怎么写,我从小就不喜欢写日记,作文什么的,所以刚开始都是贴代码,也没有人看,后面慢慢的,写的文章被推荐博客首页和优快云首页(这里也要小小的感谢下小编MM),访问量逐渐的多了起来,有更多的人看我的文章,这也使自己有了继续写文章的动力,也希望我写的东西对大家有点帮助吧,在2014年我会继续在优快云上面写博客,然后是感谢博客之星给我投票支持我的朋友们,谢谢你们支持我的每一

Mobile Internet developer 7万+

android仿微博发动态,Android GridView扩展仿微信微博发图动态添加删除图片功能

在平时的开发中,我们会看到不管是微信发朋友圈照片还是微博发布新鲜事,添加图片的时候都是选完后面还有个+号再去选择图片,这样的话比较方便用户去添加图片,有的右上角还有个-号方便用户去删除图片,而一般用户选择的图片多少都是不定的,我们只限制最大张数,我们用gridview去实现,代码可能比较简单,高手请略过。0.效果图1.准备资源图片添加图片的+号图片删除图片的图片2.可设置限制用户选择最大张数/**...

weixin_30982425的博客 467
上一篇: 使用PermissionsDispatcher轻松解决Android权限问题
下一篇: Kafka简介及使用PHP处理Kafka消息
dwf_学海无涯
博客等级 码龄10年 42粉丝 14原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值