自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 问答 (3)
  • 收藏
  • 关注

原创 Kotlin笔记三

Kotlin生成.class放入java编译器Kotlin 开发效率提高50%Kotlin 完美兼容javaKotlin 几乎解决了空指针问题《第一行代码第三版》Kotlin(十五)高阶函数接收Lambda参数的函数就可以被称为具有函数式编程风格的API,而如果你想要定义自己的函数式API,就要借助高阶函数来实现了。定义:如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数,那么该函数就称为高阶函数。Kotlin添加了函数类型的概念,使得能够传入一个函数,还能够返回一

2021-04-27 15:59:43 163

原创 Kotlin笔记二

Kotlin生成.class放入java编译器Kotlin 开发效率提高50%Kotlin 完美兼容javaKotlin 几乎解决了空指针问题《第一行代码第三版》Kotlin(九)标准函数with函数:连续调用同一个对象的多个方法的时候可以让代码更加简洁//连续调用StringBuilder的append方法和toString方法 val list = listOf("Apple", "Banana", "Orange", "Pear", "Grape") val re

2021-04-21 20:47:54 170

原创 Kotlin笔记一

Kotlin生成.class放入java编译器Kotlin 开发效率提高50%Kotlin 完美兼容javaKotlin 几乎解决了空指针问题《第一行代码第三版》Kotlin(一)变量val a = 10 // 不可变的a,相当于finalvar a = 10 // 可变的a,相当于非finalvar a:Int =10 // 指定为Int型,注意I为大写,kotlin里面所有的基本类型都大写了(二)函数fun methodName(param1:Int , param2:Int):

2021-04-19 14:27:15 153

原创 android: view滑动冲突demo

一、首先我们玩坏一个viewpager因为viewpager内部已经给我们解决了滑动冲突,因此我们先把它弄坏了,这样可以看到滑动冲突(1)新建一个类badviewpagerpublic class BadViewPager extends ViewPager { public BadViewPager(@NonNull Context context, @Nullable AttributeSet attrs) { super(context, attrs); }

2021-01-18 16:18:33 221

原创 java:怎么开启线程,有几种方法?

方法一:继承Thread1》定义一个类继承Thread2》重写run方法3》创建线程对象4》开启线程 public static void main(String[] args) { //创建线程对象 MyThread myThread = new MyThread(); //开启线程 myThread.start(); } //定义一个类继承Thread public static class MyT

2021-01-15 20:11:52 377

原创 Android:自定义view的定义以及使用

自定义View:1.自定义属性声明与获取2.onMeasure3.onDraw4.状态的存储与恢复attr.xml<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="RoundProgressBar"> <attr name="color" format="color"></attr> <a

2020-12-14 14:05:23 157

原创 Android:在Application中开启Service获取手机上安装的Apk信息(service+广播+recyclerview+searchView)

(1)启动应用,开启服务,在服务里进行耗时操作 ✔(2)广播得到所有apk的应用,展示在recyclerView上面 ✔(3)搜索按钮的实现:用searchView+RecyclerView ✳注意点:1.service要在manifest里面进行声明2.获取到的app的Icon是drawable对象,databean的imageid要用drawable 类型字段3.imageView.setImageDrawable(Drawable drawable)..

2020-12-06 16:00:31 1352

原创 Android:使用原生方法来加载图片,并且显示图片

public class MainActivity extends AppCompatActivity { ImageView imageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ima

2020-11-30 15:17:11 1230

原创 Android: okhttp3 的get和post

public class MainActivity extends AppCompatActivity { private static final String POST_URL = "https://api.github.com/markdown/raw"; private static final MediaType MEDIA_TYPE_MARKDOWN = MediaType.parse("text/x-markdown; charset=utf-8");

2020-11-29 18:13:19 391

原创 Android:文件读写报错FileNotFoundException: /storage/emulated/0/imooc.txt: open failed: ENOENT

问题定位1:可能没有打开访问权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_UN

2020-11-27 12:59:23 1447

原创 android: layout_weight的详细说明

1.Wrap_content+layout_weight:先按照内容的多少去设定控件的大小,然后按照权重的比例来分配剩余空间注意:会随着内部内容的变化,比例而受到变化<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.andr

2020-11-25 13:32:28 424

原创 android: 怎么使用腾讯X5WebView

1.进入https://x5.tencent.com/tbs/sdk.html下载sdk2.打开android studio将jar包和so文件复制到你的demo中修改build.gradleandroid { compileSdkVersion 30 buildToolsVersion "30.0.2" defaultConfig { applicationId "com.tcy.tickets" minSdkVersion 15

2020-11-23 21:10:16 1349

原创 android: 利用handler实现打地鼠游戏

xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/

2020-11-23 14:45:44 380

原创 android: handler实现倒计时功能(带有内存优化)

xml<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.androi

2020-11-23 11:45:05 324 1

原创 Android: 使用ViewPager完成app引导页

public class MainActivity extends AppCompatActivity {// int[] resourceId = {// R.layout.first,// R.layout.second,// R.layout.third// }; List<View> mListView; ViewPager viewPager; ViewGroup do.

2020-11-22 17:47:35 178

原创 [数据结构]两个数组的交集(leetcode349)c++

两个数组的交集(leetcode349)c++https://leetcode-cn.com/problems/intersection-of-two-arrays/class Solution {public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { int count=0; set<int>st(nu

2020-11-16 09:45:26 112

原创 Android理解layout_gravity 和 gravity

一、区别gravity是设置自身内部元素的对齐方式。比如一个TextView,则是设置内部文字的对齐方式。如果是ViewGroup组件如LinearLayout的话,则为设置它内部view组件的对齐方式。layout_gravity是设置自身相当于父容器的对齐方式。比如,一个TextView设置layout_gravity属性,则表示这TextView相对于父容器的对齐方式。...

2020-11-15 18:16:14 166

转载 Android 理解padding和margin

具体解释可以通过一张图展现,如下,padding约束的是控件或布局显示的内容距离边框的距离,沿垂直边框向内压缩,padding越大,内容显示控件越小;margin这是沿垂直边框向外延伸的距离, 它的意思就是给控件加了一个一定距离的空白边,显示效果只与值大小正负相关,与其他元素边界无关。值得注意的是,padding值的范围[0,任意正数](默认为0),而margin的值则有正有负。想理解负值,首先要理解0值,当margin=“0dip”时,控件外延扩展的边为0,也就是边界挨着其它边缘;marg

2020-11-15 18:06:41 294

原创 Android进阶 笔记7

View的事件体系(二)《Android开发与探索》目录View的事件体系(二)一、View的弹性滑动1、使用Scrollera、三个构造函数b、理解一下startScroll()方法c、理解一下computeScrollOffser()方法d、重写View类里面的computeScroll()这个方法e、实现f、总结2、使用动画a.单纯使用动画来展示渐近效果b.模仿Scroller3、使用延时策略a.使用Handler或View的postDelayed方法b.使用sleep方法一、View的弹性滑

2020-11-15 14:12:34 78

原创 Spring Boot 部署到阿里云ECS服务器上(centos8.1)

Spring Boot 部署到阿里云ECS服务器上(centos8.1)目录Spring Boot 部署到阿里云ECS服务器上(centos8.1)一、得有一个自己的阿里云服务器1、进入安全组开端口,选你springboot要用的端口二、利用Xshell 远程连接阿里云服务器1、Xshell下载与安装2、登入服务器三、服务器上安装docker,并部署mysql四、服务器上安装linux版的jdk1、下载linux版jdk2、打开xshell,把文件传上去3、用tar 命令解压缩jdk4、配置环境变量5、执

2020-11-14 11:30:48 403

原创 Android进阶 笔记6

View的事件体系(一)《Android开发与探索》目录View的事件体系(一)一、View的基础知识1、什么是View2、View的位置参数3、MotionEvent4、TouchSlop5、VelocityTracker速度追踪6、GestureDetector二、View的滑动1、scrollTo和scrollBy2、动画3、改变布局参数一、View的基础知识1、什么是Viewview是Android中所有控件的基类,view本身可以是单个控件也可以是多个控件组成的一组控件,通过这种关系也

2020-11-11 12:57:21 70

原创 Android进阶 笔记5

IPC机制—Inter-Process Communication(二)《Android开发与探索》目录IPC机制---Inter-Process Communication(二)一、完整的通过AIDL进行IPC的过程二、Binder连接池一、完整的通过AIDL进行IPC的过程P71传统AIDL+Service的组合可以实现Client端和Server端之间的通信整理来自:https://blog.csdn.net/ding3106/article/details/83506819##

2020-11-10 20:27:13 111

原创 Android进阶 笔记4

IPC机制—Inter-Process Communication(一)《Android开发与探索》目录IPC机制---Inter-Process Communication(一)一、Android中的多进程模式1.使用多进程会造成一些问题2.对象实现序列化并通过Intent和Binder传递3.Binder的使用及浅层原理(不讨论底层)4.Android中的IPC方式一、Android中的多进程模式在Android中使用多进程只有一种方法,那就是给四大组件在Manifest中指定android

2020-11-10 14:39:33 215

原创 Android进阶 笔记3

IntentFilter的匹配规则《Android开发与探索》目录IntentFilter的匹配规则一、IntentFilter的匹配规则1.action的匹配规则2.category的匹配规则3.data的匹配规则二、隐式方式启动一个Activity时可以去做一个判空resolveActivity方法启动Activity分为两种,分别为显示调用和隐式调用。两种共存的话,主要以显示调用为主。>显示调用,如下:Intent intent = new Intent(MainActivit.th

2020-11-09 19:53:27 111

原创 Android进阶 笔记2

Activity的启动模式(一)《Android开发与探索》目录Activity的启动模式(一)一、Activity的启动模式1.LaunchMode2.TaskAffinity3.给Activity指定启动模式二、Activity的Flags1.FLAG_ACTIVITY_NEW_TASK2.FLAG_ACTIVITY_SINGLE_TOP3.FLAG_ACTIVITY_CLEAR_TOP4.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS一、Activity的启动模式1.L

2020-11-09 14:58:22 65

原创 Android进阶 笔记1

Activity的生命周期全面分析(一)目录一、典型情况下生命周期分析1.七种典型2.问题思考二、异常情况下的生命周期分析1.资源相关的系统配置发生改变导致Activity被杀死并重新创建(1).保存状态(2).恢复状态2.资源内存不足导致低优先级的Activity被杀死3.不想让Activity在屏幕旋转的时候重新创建一、典型情况下生命周期分析1.七种典型onCreate:表示活动正在被创建,常常在里面做一下初始化工作onDestroy:表示活动即将被销毁,可以在里面做一下回收工作onSta

2020-11-08 15:00:34 997 4

原创 《第一行代码》如何实现左滑出页面效果

mainActivity.javapublic class MainActivity extends AppCompatActivity { private Toolbar toolbar; private DrawerLayout drawerLayout; private ActionBar actionBar; @Override protected void onCreate(Bundle savedInstanceState) { ..

2020-11-08 13:13:43 136

原创 《第一行代码android》怎么做个强制下线功能?

首先贴一份Activity的生命周期图,下面会用到:BaseActivity:所有活动继承它/** * 实现强制下线功能 * <p> * 大致流程:用户登录,用户名和密码成功进入新页面; * 新页面有一个Button,点击后出现警示窗口,之前活动都挂到onPause()状态下; * 先杀掉所有活动,然后强制退出到登入界面。注意在onResume()的状态下去注册广播 */public class BaseActivity extends AppCompatActivity

2020-11-02 12:21:04 186

原创 对于《第一行代表android》和风天气中okhttp3请求失败的解决

对于和风天气中okhttp3请求失败的解决Android高版本联网失败报错:Cleartext HTTP traffic to xxx not permitted解决方法在AndroidManifest.xml配置文件的标签中直接插入android:usesCleartextTraffic="true"参考文献:https://blog.csdn.net/gengkui9897/article/details/82863966...

2020-10-29 13:10:09 260

原创 用git从零开始把项目上传到github已经建好的目录中

最最一开始:1创建一个根目录为test2在test 里面 git init 开启仓库3把项目创建在这个test目录里面4github 创建项目目录5 进入本机的项目目录,git clone https://github.com/xxxx6 把克隆出来的文件,全部复制粘贴到本项目中,再把刚刚clone的文件夹删掉7 (第一步的关键) git remote add origin https://github.com/用户名/项目名.git8 回到项目目录9 git add .git comm

2020-10-28 19:30:59 91

原创 [数据结构]两两交换链表中的节点(leetcode24)c++

两两交换链表中的节点(leetcode24)c++https://leetcode-cn.com/problems/swap-nodes-in-pairs/ //1.分别遍历偶数节点和奇数节点 //2.交换两个节点 //3.更新pre,指向交换后的头/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNo

2020-07-07 21:19:19 182

原创 [数据结构]奇偶链表(leetcode328)c++

奇偶链表(leetcode328)c++https://leetcode-cn.com/problems/odd-even-linked-list///将奇节点放在一个链表里,偶链表放在另一个链表里。然后把偶链表接在奇链表的尾部/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(n

2020-07-07 21:18:00 175

原创 [数据结构]分隔链表(leetcode725)c++

分隔链表(leetcode725)c++https://leetcode-cn.com/problems/split-linked-list-in-parts/ //如果链表有N个结点,则分隔的链表中每个部分中都有n/k个结点,且前N%k部分有一个额外的结点。 //对于每个部分,有 width + (i < rem ? 1 : 0) 个结点 //首先计算得长度,每个部分的宽度 //然后创建vector //最后直接拆分原链表,把新链表存入vector中

2020-07-07 21:15:07 199

原创 [数据结构]链表组件(leetcode817)c++

链表组件(leetcode817)c++https://leetcode-cn.com/problems/linked-list-components/ //G中所有的元素能构成多少个head中相连的子链表? //遍历链表,对于head中的每个节点 a 判断其 a->val 是否在G中存在,如果存在那么G中对应的 //a->val 很可能是一个组件;此时还得检查一下 a->next(假设为 b), 如果 b->val 也在G中, //那么 (a-

2020-07-07 21:13:25 188

原创 [数据结构]排序链表(leetcode148)c++

排序链表(leetcode148)c++https://leetcode-cn.com/problems/sort-list/ //插入到vector中 //vector排序 //重新相连/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL)

2020-07-07 21:11:25 148

原创 [数据结构]旋转链表(leetcode61)c++

旋转链表(leetcode61)c++https://leetcode-cn.com/problems/rotate-list/ //先将链表闭合成环 //然后找到相应的位置断开这个环,确定新的链表头和链表尾 //1. 找到旧的尾部并将其与链表头相连,整个链表闭合成环,同时计算出链表的长度 n。 //2. 找到新的尾部,第 (n - k % n - 1) 个节点 ,新的链表头是第 (n - k % n) 个节点。 //3. 断开环 new_tail->nex

2020-07-07 21:09:48 137

原创 [数据结构]重排链表(leetcode143)c++

2020-07-07 21:07:02 376

原创 [数据结构]一元多项式的加/减法运算(链表)

一元多项式的加/减法运算(链表)问题描述 :假设2个稀疏一元多项式分别由带头结点的有序单链表A和B存储(指数项递增有序)。现要求设计一个算法,实现稀疏一元多项式的加减法计算。要求使用A和B的原存储空间(运算后B不再存在,A链表中保存结果多项式)。输入中的单链表的长度不得在计算算法中利用,仅作为建表使用。注意:加/减法计算后,如某一项的结果系数为0,则该项要从多项式链表中删除。输入说明 :第一行:加/减法选择(0:加法 1:减法)第二行:一元多项式A的项数第三行:一元多项式A的各项的系数(系数

2020-07-07 21:00:47 3690

原创 [数据结构]长整数加法运算(链表)

长整数加法运算(链表)问题描述 :假设2个任意长度的整数x、y分别由双向链表A和B存储,现要求设计一个算法,实现x+y。计算结果存储在链表C中。说明:由于A和B输出时需要从头至尾遍历,而做加法时需要从尾至头遍历,因此使用双向链表存储。可以从长整数的低位开始拆分(4位为一组,即不超过9999的非负整数),依次存放在链表的每个结点的数据域中;头结点的数据域存放正负数标志(正数或0:1,负数:-1)。输入说明 :第一行:长整数x第二行:长整数y输出说明 :第一行:格式化后的长整数x(从低位到高

2020-07-07 20:59:05 5741 1

原创 [数据结构]圆桌问题(循环链表)

圆桌问题(循环链表)问题描述 :圆桌上围坐着2n个人。其中n个人是好人,另外n个人是坏人。如果从第一个人开始数数,数到第m个人,则立即处死该人;然后从被处死的人之后开始数数,再将数到的第m个人处死……依此方法不断处死围坐在圆桌上的人。试问预先应如何安排这些好人与坏人的座位,能使得在处死n个人之后,圆桌上围坐的剩余的n个人全是好人。输入说明 :输入:好人和坏人的人数n(<=32767)、步长m(<=50);输出说明 :输出2n个大写字母,‘G’表示好人,‘B’表示坏人,50个字母为一行

2020-06-18 10:34:20 941

JS动画效果源代码(含注释)

某课网----------------JS动画效果的所有课程源代码,包括图片素材,都可直接运行。(含注释)

2019-03-06

fullcalendar插件(含demo)

FullCalendar提供了丰富的属性设置和方法调用,开发者可以根据FullCalendar提供的API快速完成一个日历日程的开发

2019-01-08

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

TA关注的人

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