Android recyclerview 调用notifyItemChanged() 刷新无效,刷新错乱 问题在项目中发现,同样的调用方式,在别的页面是没有问题,就唯独在我创建的新页面中出现该问题,调用adapter.notifyItemChanged()刷新方法后,没有生效,很是奇怪,有时候刷新的索引的不对的。原因是因为我新建的页面中recyclerview 列表中,添加了header,倒是列表索引和数据的索引对不上,所以就导致了:有时候是刷新无效,有时候是刷新的索引和理论上的位置不一样。解决方案找到问题就好解决了,调用notifyItemChanged()方法前,判断一下,是否有head
Caused by: java.io.IOException: Cannot run program “git“: CreateProcess error=2 Caused by: java.io.IOException: Cannot run program “git”: CreateProcess error=2, ϵͳ�Ҳ���ָ�����ļ���出现该问题是因为在电脑的环境变量中没有配置相关git命令,需要在window系统变量中配置一下在你的环境环境变量中添加以下配置,其中前面的路径改为你自己安装的git的路径即可C:\Program Files\Git\binC:\Program Files\Git\cmd...
Android webView 长按保存图片 1、拦截webView的长按事件在页面中监听webView的长按事件,在监听中判断长按取到的类型是否是图片类型,加载图片有两种情况:一种是加载了图片的URL链接;另一种是加载了图片的base64编码代码如下所示:mWebView?.setOnLongClickListener { val result = mWebView?.hitTestResult ?: return@setO...
网页如何截长图 网页如何截长图Chrome浏览器截放图方法0、前置条件:确保我们的Chrome版本 >= 591、首先打开我们需要截图的网页,MacOS按下 command + option + i (Windows为F12)快捷键,即打开了浏览器的调试页面。2、然后在该页面按下command + shift + p(Windows下为 ctrl + shift + p)快捷键,会出现一个输入框,...
Sleep和wait的区别 首先sleep和wait最大的区别是: sleep睡眠时,保持对象锁,仍然占有该锁。 wait睡眠时,释放对象锁。 sleep() 方法是线程类(Thread)的静态方法,让调用线程进入睡眠状态,让出执行机会给其他线程,等到休眠时间结束后,线程进入就绪状态和其他线程一起竞争cpu的执行时间。 因为sleep() 是static静态的方法,他不能改变对象的机锁,当一个synchr...
这是一份详细 & 全面的 SQLlite数据库 使用手册 转载来自:https://juejin.im/post/5a5bfc016fb9a01ca10ae0a9Android :这是一份详细 & 全面的 SQLlite数据库 使用手册2018 年 01 月 15 日Carson_Ho前言在Android开发中,主要的数据存储有5种,具体如下其中,SQLite数据库的存储方式 非常常用今天我将带大家全面了解关于Androi
Android 约束布局(ConstraintLayout)详解 转载来自:http://blog.csdn.net/airsaid/article/details/79052011 前言约束概述转换布局开始创建布局添加约束基线约束ChainsProperties设置宽高比例Guidelines自动添加约束参考 本篇 ConstraintLayout 讲解版本:1.0.2,1.1.x 版本开始
Android中Debuggable设置问题 在Android中的AndroidManifest.xml文件中可以设置很多属性,其中有一项是debuggable属性,意为“可调试”,有true和false两种模式。 默认情况下我们都是需要设置的,如果打包的是debug版本的apk文件,那么这个debuggable属性就自动设置为true,反之,如果打包的是release版本的apk文件,那么这个debuggable属性就自动设置为false
Android allowBackup 设为false 报错 在Android的AndroidMainfest.xml中设置android:allowBackup="false"然后编译的时候报错如下Error:Execution failed for task ':app:processDebugManifest'.解决方法在AndroidManifest.xml中添加如下代码:tools:replace="android:allowBackup"整体如下所
如何安全退出已调用多个Activity的Application 退出Activity 直接调用 finish () 方法即可,退出activity 会执行 onDestroy()方法 。但是某些情况下,我们在应用中开启了很多的Activity,并且我们希望能直接一键退出整个应用,而不是一层一层的向外退出Activity。抛异常强制退出: (暴力、偏门、不建议采用)通过抛异常,使程序Force Close,如100/0。 但是,需要解决的问题是,如何使程序结束掉
Dialog和PopupWindow的区别 Android中的对话框有多种:Toast,OptionsMenu,PopupWindow和Dialog。它们都可以实现弹窗功能,但是他们之间有一些差别,下面我们先对比Dialog和PopuWindow区别。Popupwindow在显示之前一定要设置宽高,Dialog无此限制。Popupwindow默认不会响应物理键盘的back,除非显示设置了popup.setFocusable(true);而
Android JPush的集成 极光推送 1 极光推送官网注册账号2 选择第一个3 选择创建一个新的应用,其中应用程序的包名一定要写正确,创建完成后会生成一个应用程序的key,这个key会在APP配置文件中用到4 下载JPush的SDK文档5 一般选择手动集成方式,把下载的SDK解压,根据手动集成方式中的文档说明,配置自己的项目,把要拷贝的东西统统拷贝到自己的项目中来,主要配置的就是【manifest】文件,然后在自己项目中创建MyAppl
The SDK platform-tools version 23 is too old to check APIs compiled with API 24... ... 问题描述 打开Android Studio 2.2.2,项目的代码中在包名下出现一道红线,但是并不会影响运行,可是看着就是不舒服,我先是更新的Sdk,但是依然出现这条红线。 如下图所示的位置解决方法 打开android Studio的【setting】选项,并且选择【Android SDK】,此处要更新的注意了,是【SDK Tools】,选择如下图所示的【Android SDK Pl
Android studio APP签名打包 点击Android studio中的build目录,选择generate signed apk 选择后出现如下图界面 如果该APP是第一次发布,那么我们选择创建一个新的key,点击 create new 按钮,出现如下图把上面的内容填完以后点击 Ok 出现下图,里面的内容都是根据我们刚刚填写的内容自动填充的,可以选择记住密码 我们继续点击 next 按钮,这时又出现了让我们输入密码的