需要使用ScrollView嵌套RecyclerView,当RecyclerView中的item数量比较多时,就会出现item只显示一部分数据,并没有将用户勾选的商品数量全部显示出来,这个时候就需要我们做一下处理了...NestedScrollView支持嵌套滑动,既能填item显示不全的坑,又可以填嵌套滑动卡顿的坑。不了解的童鞋可以去学习一波,这里就不做详细的说明了。...2、在RecyclerView的外面嵌套一层RelativeLayout,然后添加属性 android:descendantFocusability="blocksDescendants"...." android:descendantFocusability="blocksDescendants"> android.support.v7.widget.RecyclerView...android:id="@+id/recyclerView" android:layout_width="match_parent"
Toast 一、控件介绍 二、具体实例 一、控件介绍 Toast是Android系统提供的轻量级信息提醒机制,用于向用户提示即时消息,它显示在应用程序界面的最上层,显示一段时间后自动消失不会打断当前操作...表示你需要提示的信息, Time:表示提示信息的时长,其属性值有”LENGTH_SHORT 和 LENGTH_LONG”,这两个值分别表示“短时间”,“长时间”, 然后调用了show方法来讲提示信息显示到界面中...已断开的信息” Toast.makeText(MainActivity.this,"WIFI已断开",Toast.LENGTH_SHORT).show(); 上图为运行结果,默认情况下,Tomat消息会显示在屏幕的下方
__android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__) #define LOGI(...)...__android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__) #define LOGW(...)...__android_log_print(ANDROID_LOG_WARN,LOG_TAG,__VA_ARGS__) #define LOGE(...)...__android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__) #define LOGF(...)...#endif #endif 最后在c或c++文件中#include “log.h”就可以使用了
控件)来说,比如说ListView只能竖向滚动显示数据,不能横向滚动显示数据,在一些特殊的需求中,ListView就无能为力了。..."> 在主布局文件中,我们添加了一个ListView控件,用于接下来的数据显示,之后我们要新建一个布局文件用于显示ListView中的项目数据...Activity来显示RecyclerView,笔者这里选择的是新建一个Activity来显示RecyclerView: 因为RecyclerView是在android5.0版本新增在support.v7...库中,并不是在SDK中,所以我们要进行依赖声明:在app中的build.gradle文件中加入以下代码: compile 'com.android.support:recyclerview-v7:25.1.1...这里我用的是android studio IDE 个人感觉android studio 相比eclipse在android开放方面好,不过android studio 对电脑性能要求更加高。
前言: 最近在做一个Android相关的小项目,因为之前这方面的项目做的比较的少。今天在使用虚拟机调试的时候经常出现一些莫名其妙的问题,经过自己多次的尝试和搜索终于解决了这些问题。...问题: 每次run(运行)项目在android Emulator一直显示黑屏问题,如下如所示: ? 可能是没有检测到匹配的虚拟设备(unknown devices): ?...解决方案: 重新创建一个新的虚拟设备(Create virtural devices),下载,安装:点击Android Virtual Device Manager(虚拟设备管理)按钮>Create...最后选择刚安装的虚拟设备运行android项目: ? 黑屏问题成功解决,项目界面正常展示: ? ?
三、在Android中显示APNG动图 这里使用了一个开源库来解析加载APNG图,apng-view 使用示例: String url = "http://xxx.png"; imageView.setOnClickListener...imageView); 效果图: [jhs51xdt38.gif] 四、apng-view源码分析 实现过程 先看看apng-view实现过程: [实现过程] (1)图片的下载/加载:通过图片加载开源库Android-Universal-Image-Loader...[batn8vbhrw.png] 源码解读 (1)prepare 先从图片文件读取这里说起,图片读取是在ApngDrawable这个prepare()方法中进行的; // 文件路径:com/github...delayNum = pngChunk.getDelayNum(); int delayDen = pngChunk.getDelayDen(); int delay = Math.round(delayNum...= null) apngListener.onAnimationRepeat(this); } currentFrame++; } 绘制动图的核心代码在drawAnimateBitmap方法里: private
在Android studio 工程中的app目录下的buil.gradle文件中加上上图划出的代码,之后点击右上角的 async now 蓝色字体,android studio 就会为我们添加对RecyclerView...="match_parent" > android.support.v7.widget.RecyclerView> 可以看到,我们在布局文件中只加入了一个RecyclerView...parent) { int childCount = parent.getChildCount(); // 获取RecyclerView控件中的子控件总数 int left...这里为了显示出滑动的效果,故意多加了点数据,这里是RecyclerView控件中的子项排布方式为竖值的分隔线效果,那么水平呢?让我们来改一下MainActivity.java: ?...在MainActivity中加了一个网格布局,并且设置排布方向和每一行显示的子项数,之后调用了MyItemDecoration的第二个适用于网格布局的构造方法。
-- 传统scrollview和RecyclerView滚动冲突 --> android:layout_width...="match_parent" android:layout_height="match_parent"> recyclerview.widget.RecyclerView...getActivity()) { @Override public boolean canScrollVertically() { return false; }});如果无法解决,在布局文件中的...RecycleView的外部套一个RelativeLayoutGridView在NestedScrollView失去高度显示不全在使用Android的ScrollView里面嵌套GridView时,设置...android:layout_height="wrap_content"属性,运行界面的效果不会出现全部数据,即GridView会显示不全。
控件依赖包 Android Studio开发工具,在本项目的build.gradle文件中添加 compile 'com.android.support:recyclerview-v7:23.1.1...在SDK Manager中下载Support Library ? sdk\extras\android\support\v7\recyclerview\libs ?...(int size) { ArrayList sampleData = new ArrayList(size); for (int i = 0; i recyclerView.model.SampleModel; /** * 不采用分隔线, 在Item的布局中 采用layout_margin...而“为RecyclerView的每个子item设置setOnClickListener”在Adapter中设置。其实直接在onClick中也能完全处理item的点击事件,但是这样会破坏代码的逻辑。
概述 我们在使用Android Studio创建Activity、Fragment等等的时候,都会使用Android Studio提供的模板来简化我们创建的,使用模板时,我们只要做简单的配置,Android...介绍 Android Studio模板的安装路径: /plugins/android/lib/templates ? ?...模板文件结构 Android Studio中已有的 EmptyActivity模板: ?...说明: 中的 name对应新建 Activity时显示的名字 对应New的类别为 Activity 对应界面上蓝色框的一个项, id:唯一表示...自定义MVP模板 在Google给出的MVP Sample中,每创建一个页面,需要创建: XxActivity、 XxFragment、 XxContract、 XxPresenter四个文件,步骤繁琐
在.gradle目录中,修改init.gradle文件,修改其中的maven地址。 在.m2目录中,修改settings.xml文件,修改其中的maven地址。
点击事件的注册是在 RecyclerView 的 onBindViewHolder 中: public void onBindViewHolder(BuyCarPlanItemViewHolder holder...onClick() 中使用 onBindViewHolder() 方法中的参数 position 来获取数据, Android Studio 中有个提示: Do not treat position...大概意思就是: RecyclerView 中的数据有位置改变(比如删除)时一般不会重新调用 onBindViewHolder() 方法,除非这个元素不可用。...也就是说 onBindViewHolder() 方法中的位置参数 position 不是实时更新的,所以在我们删除元素后,item 的 position 没有改变。...RecyclerView 一般情况下不会处理任何 adapter 的更新,除非重新绘制界面。这导致有时候用户想象中的和实际 RecyclerView 呈现的不一致。
getSpanSize(int position) 方法 ; ② 设置占用格子数目 : 设置元素在 getSpanSize 方法中 , 设置每个 position 位置占据的格子数量 ; ③ 布局管理器设置...数据源 */ private ArrayList names = new ArrayList(); /** * 当前的 RecyclerView...从布局中获取 RecyclerView recycler_view = findViewById(R.id.recycler_view); //2 ....RecyclerView 官方文档 : https://developer.android.google.cn/reference/androidx/recyclerview/widget/RecyclerView...博客源码快照 : https://download.csdn.net/download/han1202012/15006329 ( 使用 Android Studio 打开 )
前言 RecyclerView在Android界面开发当中是很重要的, 那掌握它也是很必要的....---- 基础使用 要使用RecyclerView在Android Studio 2.x(以下简称AS), 要这样: compile 'com.android.support:cardview-v7...:cardview-v7:26.1.0' implementation 'com.android.support:recyclerview-v7:26.1.0' 之后在布局文件中写入如下代码就引入了RecyclerView...布局类 效果 LinearLayoutManager 以垂直或水平滚动列表方式显示项目 GridLayoutManager 在网格中显示项目 StaggeredGridLayoutManager 在分散对齐网格中显示项目...更多 是不是感觉特别爽, 那看看更爽的, 在不写适配器的情况下快速添加条目: final ArrayList mData = new ArrayList(); for (int
(int fromPosition, int toPosition) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView...(int position) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView extends ViewGroup...(); } } } 运行效果 : 该操作没有动画效果 , 只是刷新数据显示 ; 三、完整代码示例 ---- 完整代码示例 仅做参考 : package kim.hsl.recyclerview...从布局中获取 RecyclerView RecyclerView recycler_view = findViewById(R.id.recycler_view); /...Studio 打开 )
(int position) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView extends ViewGroup...- itemCount 位置 ; 参数说明 : int positionStart 参数 : 被删除的元素在原数据集中首个元素的位置索引 ; ( 旧的数据集中的索引位置 ) int itemCount...(int positionStart, int itemCount) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView...从布局中获取 RecyclerView RecyclerView recycler_view = findViewById(R.id.recycler_view); /...Studio 打开 )
问题 不知道怎么 app 对应的进程在 Android Monitor / DDMS 中都看不到了,想调试或者看个日志都不行。...分析 一般我们在输出日志时都会根据是否为 debug 统一控制,这样可以避免在 生产包 中大量输出日志,不安全不说,也影响性能。...Android 系统应该也是这么考虑,默认情况下 进程不可调试,不输出 log,需要我们手动设置为可调试模式。...解决办法 1.在 app/build.gradle 的 中添加(一般在 debug 环境下) debuggable true 2.或者在 AndroidManifest 文件的 application...标签下添加(不建议) android:debuggable="true" 我是不知道什么时候被同事悄悄地修改了 渠道,半天才发现!
(int position) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView extends ViewGroup...(int position) 函数原型 : 该函数定义在 RecyclerView 的内部类 Adapter 中 ; public class RecyclerView extends ViewGroup...数据源 */ private ArrayList names = new ArrayList(); /** * 适配器...从布局中获取 RecyclerView RecyclerView recycler_view = findViewById(R.id.recycler_view); /...Studio 打开 )
New Project… " 选项 , 创建默认类型工程即可 , 输入工程名称 ; 二、修改 build.gradle 构建脚本 ---- 将根目录下的 build.gradle 构建脚本中的...dependencies 依赖中的 classpath "com.android.tools.build:gradle:4.2.1" 注释掉 , 不需要依赖 Android Gradle 插件 ;...:gradle:4.2.1" } 主要是添加 com.android.tools.build:gradle:4.2.1 依赖 ; 编辑完成后 , 点击右上角的 " Sync Now " 按钮 , 进行...Gradle 配置 ; 配置完成后 , 即可在 Project 面板中的 External Libraries 中看到 Gradle:com.android.tools.build:gradle:...4.2.1 依赖库 , 展开该 gradle-4.2.1.jar 的包 , 即可查看源码 , AppExtension 源码如下图右侧所示 ; 右键点击该依赖库 , 在弹出的菜单中选择 " Library