刚起步学习安卓,在学习郭神的《第一行代码》的时候发现litepal怎么也加入不了依赖。
并发送这个报错:Failed to resolve: org.litepal.guolindev:core:3.2.3
网上很多资料都没有用,最后是自己碰巧解决了。
最开始是百度了好几天的资料才发现使用GitHub的依赖需要添加这个:maven { url 'https://www.jitpack.io' }
但还是无济于事,最后瞎猫碰上死耗子又添加了阿里云的maven最后成功添加依赖
jcenter { url 'https://maven.aliyun.com/repository/public' }
做此记录
· 出现’META-INF/DEPENDENCIES’.
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
}
记着这个用来删除重复的代码段要放在android{}里面,不然会报错
· 调用相册章节
即使已经动态权限申请了WRITE_EXTERNAL_STORAGE,即使已经是Android7.0以上了,还是需要在AndroidManifest里面写上
不然连权限申请都不d出来,最后的图片更是展现不了。找了很久才发现是这个原因
· 使用getAdapterPosition时返回的position为-1
网上搜到了很多问题和解决答案,最后在一个博客的一个大佬的评论中得到了答案,供大家参考:
这里不是因为使用了notifyDataSetChanged导致的周期问题什么什么的,是我在oncreate最后返回值写错了,写成了
return new ViewHolder(view);
和那个博主的错误情况如出一辙,应该是自动补全导致的锅,看了下郭神的代码,正确的也如那个评论所说,应该是:
return holder;
· litepal中的Datasupport被弃用问题
被LitePalSupport替代了,extends LitePalSupport即可
·as中批量替换检索得的关键词的方法
先是ctrl+f搜索所需要替换的字串,再用ctrl+r输入替换后的字串。
·layoutflater与findViewById()
前者可以找到layout目录下的xml文件并实例化,后者是可以在xml文件中更具体地找到widget控件。
1、对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来载入;
2、对于一个已经载入的界面,就可以使用Activiyt.findViewById()方法来获得其中的界面元素。
litepal.xml里表初始化代码有错…初始化时写的是province而不是Province
解决方法原文
源码无法下载,显示
all packages are not available for download!
the following packages are not available:
package id sources android-32
文章内提到是因为api32根本没提供源码,换成低版本的sdk就可以了,30及以下都可以
# ·使用drawerlayout的时候滑动页面遮挡问题 因为在该布局的第二个子控件中要打android:layout_gravity="start"的时候发现没有给我自动补全,我以为是因为版本迭代导致这个不需要了就没写,结果一直有bug,选择城市的侧滑界面一直霸占了weatheractivity页面,后来上网查drawerlayout的时候发现android:layout_gravity="start"是必须要写的,然后我手动写完发现是可以使用的,大家可以注意下。 总结:android:layout_gravity="start"可能会没有自动补全,但是可以写的,也是必须要写的。功能是以阅读习惯从左到右,也就是侧滑导航在左边。 # 遗忘笔记部分 此处记录遗忘的知识点: ## ContextCompat ContextCompat 可以理解为是封装了 Context 的一些便捷方法,如加载图片等资源文件 ## 使用as模拟器时电脑本机的地址是10.0.2.2
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)