自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

原创 1.所有被new出来的实例都是存放在堆里的吗?

不是所有被new出来的实例都存在堆里面。

2023-01-05 10:21:56 1001

原创 Android商城开发----点击加入购物车,购物车商品的增删减

实现点击加入购物车功能,实现点击+ 商品数量+1,点击- 商品数量-1,与数据库同步哦

2022-12-13 16:41:49 2625 2

原创 添加pickerView依赖后,报错Could not resolve all files for configuration ‘:app:debugCompileClasspath‘.

添加依赖仓库

2022-12-08 15:35:52 3615

转载 Value okhttp3.internal.http.RealResponseBody of type java.lang.String cannot be converted to jsonObj

应该是String responseData = response.body().string();

2022-12-07 13:31:38 385

原创 Android动态获取图片资源

android动态获取图片资源,以变量的形式动态加载图片资源icon1,icon2,icon3

2022-12-01 19:32:05 1270 3

原创 在adapter中调用数据库,全局获取Context

全局获取Context!

2022-12-01 14:48:43 580

原创 Android数据库处理重复插入Insert数据的问题

两步解决数据库插入数据重复的问题!

2022-12-01 14:08:32 1328

转载 Android配置adb环境

Android配置adb环境变量

2022-11-24 16:39:58 3303

原创 Android引用包冲突,报错FAILURE:Build failed with an exception

解决冲突的方法有6种,全局删除最简单粗暴

2022-11-23 17:56:38 655

原创 Android在子线程中弹窗弹对话框

只需在弹窗前加上Looper.prepare(); 后加上Lopper.loop(),即可解决!

2022-11-23 14:56:56 1088

原创 Android商城开发----点击左侧分类列表右侧更新对应列表内容

实现点击左侧分类,更新右侧的商品列表。主要用了EventBus! 布局文件在文章最下面!

2022-11-16 19:25:18 2142 3

原创 RecyclerView设置点击选中更改背景颜色和文字颜色

只需三步,轻松实现更换点击选中卡片的背景颜色!

2022-11-15 14:06:05 2622

原创 Android商城开发----viewPager实现广告轮播(在首页Fragment中实现)

使用ViewFlipper 在创建好的Fragment中实现【首页】广告轮播图

2022-11-08 13:38:18 1079

原创 Android运行报错Manifest merger failed : uses-sdk:minSdkVersion 26 cannot be smaller than version 28 decl

只需加一句话即可解决问题!

2022-11-08 09:56:57 1631

原创 在Fragment中new控件报错,cannot be applied,在碎片中使用Context对象报错

碎片和活动间的通信:在fragment中新建一个控件的时候报错,原因是new ImageView(this),fragment不是context的子类。要用getActivity();

2022-11-04 11:16:38 504 1

原创 Android开发----实现登录注册页面(创建本地数据库,对注册的账户密码进行存储)

实现了登录注册页面的开发,创建了本地数据库,用来存储注册的账户密码。注册账户为手机号,对账户为手机号进行了正则化验证。登录成功跳转至主页面。

2022-10-28 16:21:03 13743 29

转载 Android开发----实现应用启动页

每个应用程序都需要一个启动页!

2022-10-14 09:59:47 1932

原创 Android开发----生成Android底部导航栏

Android 新建带有底部导航栏的activity,并更改导航栏图标和标题。

2022-10-13 09:53:52 6655 4

原创 Android 运行报错:Circular dependencies cannot exist in RelativeLayout

Android 运行报错Circular dependencies cannot exist in RelativeLayout

2022-09-21 16:57:30 727

原创 Android Studio在添加组件时,报错:“Cannot resolve class XXX“

添加组件报错“Cannot resolve class XXX”

2022-09-08 18:22:50 4587

原创 Android Studio添加Toolbar控件报错:Cannot resolve class Toolbar

添加toolbar控件报错

2022-09-08 11:45:19 1362

原创 android studio自定义app图标

android studio自定义app图标

2022-09-02 14:22:37 7498 1

原创 Android Studio快捷键(Windows/Linux/macOS)

Android Studio快捷键大全(Windows/Linux/macOS)

2022-09-01 19:18:18 795

原创 Java异常处理

异常处理是什么,怎么捕获

2022-08-29 10:32:31 283

原创 <script>元素属性

HTML中< script >元素属性< script >元素有8个属性:async :表示应该立即下载脚本,但不能阻止其他页面动作,比如下载资源或等待其他脚本加载。只对外部脚本文件有效。defer:表示在文档解析和显示完成后再执行脚本是没有问题的。只对外部脚本有效(IE7以后)。charset:-使用src属性指定的代码字符集。(很少使用)crossorigin:配置相关请求CROS(跨资源共享)设置。默认不使用。crossorigin=“ano

2021-10-21 11:30:02 370

转载 从URL到页面经历了什么?

从URL到页面经历了什么?参考链接1.拿到url,肯定要先对url进行解析分解URL常用APIlocation.href 整个URLlocation.protocol 协议类型:http/httpslocation.pathname 路径location.search 取参 查询串从?开始location.hash 哈希值 书签名#后的内容编码:或重写url对于有些域名参数中还有url,这样就会在解析时候出现问题,识别成两个urlencodeURI对整个url进行编码,中文有效

2021-09-18 01:13:07 102

转载 判断数据类型的几种方法

判断数据类型的几种方法参考链接1参考链接21.typeof用typeof判断数据类型,大家应该都知道了,我在前面的文章也有提过typeof可以判断的数据类型。typeof可以返回所有的值类型,可以判断是否为引用类型,但是无法具体判断出属于哪种引用类型,因为所有的返回值都为‘Object’2.instanceofinstanceof 返回布尔值我原以为利用instanceof可以判断出引用类型,但是instanceof是基于原型和原型链的,如果修改了他的原型就无法判断。缺点:只能判断对象是

2021-09-18 00:34:57 2320

原创 json-server配置

json-server配置1.全局安装json-servernpm i json-server -g2.新建db.json存放mock数据3.启动json-serverjson-server --watch db.json

2021-08-31 15:44:32 283

原创 sourcetree的安装配置

SourceTree的安装配置过程以及遇到问题的解决方案**1.SourceTree的安装****2.配置密钥部分参考了另一个链接**:**3.查看密钥**1.SourceTree的安装安装教程链接这份教程特别详细,我是参考这份教程来的.然后在安装完成之后,在SourceTree使用过程部分配置密钥遇到问题,总是报错,于是又去搜索解决方法.2.配置密钥部分参考了另一个链接:SourceTree 添加 ssh key 方法密钥的生成是在Git Bash中生成的,请参考链接,$ ssh-key

2021-08-31 14:37:52 300

原创 手写数组扁平化

手写数组扁平化问题描述:输入深度数组例如[1, 2, [3, 4, 5, [6, 7]]]输出[1,2,3,4,5,6,7] 变为一个数组且不改变原有顺序代码演示://手写数组扁平化function flat(arr) { const isDeep = arr.some(item => item instanceof Array); //判断数组是否是深度数组, if (!isDeep) { return arr;//不是深度数组直接返回结果

2021-08-30 16:02:14 262

原创 获取URL参数

获取URL参数//传统方式//8001/index.html?a=10&b=20&c=30#hashfunction query(name) { const search = location.search.substr(1); //location.search //?a=10&b=20&c=30 //.substr(1)去掉问号 //search: a=10&b=20&c=30 const reg = new RegExp(

2021-08-26 22:28:30 95

原创 手写字符串 trim 方法,保证浏览器的兼容性

手写字符串 trim 方法,保证浏览器的兼容性trim() 方法删除字符串首尾空白字符手写trim方法:String.prototype.trim = function(){ return this.replace(/^\s+/,'').replace(/\s+$/,'');//利用正则表达式}//正则化的格式://包起来,^代表开始 \s代表空字符 +代表 重复一次或更多次 $代表结尾 //^\s+ 多个以空白字符开始的字符 \s+$多个以空白字符结束的字符//用空字符代替所有

2021-08-24 22:00:20 314

原创 如何获取多个数字的最大值?

如何获取多个数字的最大值?方法一: function max(){ const nums = Array.prototype.slice.call(arguments);//把输入参数变成数组,方便用forEach遍历 let max = 0; nums.forEach( n = > { if (n > max){ max = n; //比较每个数和max的大小,要是比max大就把它赋值给max 保证max是最大值 } }) return max;}方法二

2021-08-24 21:43:58 615

原创 一次性插入多个DOM节点,考虑性能

一次性插入多个DOM节点,考虑性能频繁操作会导致卡顿,因此要考虑以下两点:对DOM操作做缓存//不缓存查询结果for( let i = 0; i < document.getElementsByTagName('p').length; i++) {//每次循环DOM都会查询获取length,从而导致卡顿}//缓存查询结果const list = document.getElementsByTagName('p');const length = pList.length;for

2021-08-19 10:25:37 595 1

原创 手写简易ajax

手写简易的ajax//手写简易ajaxfunction ajax(url) { const p = new Promise((resolve, reject) => { const xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.onreadystatechange = function () { if (xhr.readyState === 4)

2021-08-19 10:06:50 76

原创 手写GET请求

XMLHttpRequest手写GET请求 const xhr = new XMLHttpRequest();//新建实例 xhr.open ( 'GET', './data/test.json', true);//true是异步请求 xhr.onreadystatechange = function (){ if( xhr.readyState === 4){ //响应内容解析完成,可在客户端调用 if( xhr.status === 200){ //加载成功 alert( xh

2021-08-19 09:54:32 315

原创 手写通用事件监听函数

手写通用事件监听函数事件代理和事件冒泡普通事件绑定和事件代理绑定通用的事件监听函数事件代理和事件冒泡事件代理:事件代理(Event Delegation),又称之为事件委托。是JavaScript中常用绑定事件的常用技巧。顾名思义,“事件代理”即是把原本需要绑定在子元素的响应事件(click、keydown…)委托给父元素,让父元素担当事件监听的职务。事件代理的原理是DOM元素的事件冒泡。事件冒泡:当要多个子元素绑定同一事件时,可使其父元素绑定此事件,这样会从触发元素向父元素冒泡,也就是p

2021-08-18 23:27:23 203 2

原创 手写深拷贝

手写深拷贝引言深入分析值类型和引用类型浅拷贝和深拷贝手写深拷贝引言在讲手写深拷贝之前,就要说到什么是深拷贝,而这要从深入分析值类型和引用类型的区别讲起。深入分析值类型和引用类型值类型: undefined,字符串,数值型,布尔型,Symbol引用类型: obj对象,数组,null(特殊的引用类型,指向空地址)深入分析:值类型示例:值类型在栈中存的是值//对照下图看,代码在内存中的运行过程 //值类型直接在栈中存值!let a = 100; //把值 100 存入 key a

2021-08-18 21:58:02 221

原创 手写clearfix

手写clearfix手写clearfix手写clearfix1.自清除子元素浮动2.解决外边距重叠问题 .clearfix : after { /*clearfix为类名*/ content : ''; display : table; /*此元素作为块级元素显示*/ clear : both;}.clearfix { /*也可以不写*/ *zoom :1; /*兼容IE低版本*/}...

2021-08-18 20:29:39 201

原创 6.数组的API

6.数组的API问题:数组的pop push unshift shift 分别做什么回答思路:1.功能是什么2.返回值是什么3.是否会对原数组造成影响arr.pop() //删除数组最后一位,返回最后一位arr.push(50) //数组中往后追加一位50,返回的是数组长度lengtharr.unshift(15)//数组中往前追加一位15,返回的是数组长度lengtharr.shift()//删除数组中的第一位10,并返回被删除的第一位10这几种方法都改变了原数组,属于非纯函数arr

2021-08-16 15:33:59 68

1_yzj_电商demo.rar

1_yzj_电商demo.rar

2023-04-18

Android开发基础知识总结

最近系统学习了Android开发基础知识,并对其进行了总结。主要包含Android的UI组件、初高级资源、网络编程及Internet应用、多线程以及Service等后台操作、Handler消息处理机制、Handler和looper的关系、Android的数据存储、调用手机摄像头拍照、录像、播放音频、发送广播消息等知识。

2022-10-10

java基础知识汇总思维框图

最近学了java基础知识,并对其进行了汇总,知识点全面但是相对独立,还希望大家可以多多指教。

2022-10-10

Web前端工程师一面高频问题总结.xmind

看了这篇总结指定过前端大厂一面!!双越老师前端面试课总结!!H5/CSS、JS基础知识:变量类型、逻辑运算、原型原型链、作用域闭包、异步;JS-Web-API:DOM、BOM、事件、ajax、存储;HTTP协议:Restful API、缓存策略等高频问题。

2021-11-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除