- 博客(107)
- 资源 (6)
- 收藏
- 关注
原创 第一行代码第四章读书笔记(2)自定义标题栏
init {Toast.makeText(context,"编辑", Toast.LENGTH_SHORT).show()</
2025-05-28 22:49:40
221
原创 第一行代码第四章阅读笔记(1)原生控件和布局
线性布局是通过属性将布局内的控件依次排列在竖直方向或者水平方向上的布局,主要的属性是orientation,它的值可以是vertical(竖直方向)和horizontal(水平方向)。布局是用来放控件的,通过一些属性控制控件所显示的位置,最常用的布局有线性布局(LinearLayout)、相对布局(RelativeLayout)和帧布局(FrameLayout)。线性布局之比重,线性布局可以通过layout_weight属性来控制控件占父布局的几分之几。控件相对于基准控件的位置。控件相对于父布局的位置。
2025-05-28 00:37:31
1020
原创 第一行代码第二章读书笔记(2)Kotlin进阶
Kotlin中的数据类,只需要在类的前面添加data关键字即可,其他的什么函数都不用重写,数据类的功能它就都有了。它的调用方式和Java中的静态方法调用类似,但是实际情况是Kotlin默认创建了该类的对象。月亮与六便士 这本书的价格是 180。这两个手机是同款手机吗?遥远的救世主 这本书的价格是 50。追风筝的人 这本书的价格是 100。追风筝的人 这本书的价格是 100。百年孤独 这本书的价格是 150。百年孤独 这本书的价格是 130。红楼梦 这本书的价格是 200。红楼梦 这本书的价格是 200。
2025-05-07 21:51:26
329
原创 第一行代码第二章读书笔记(1)Kotlin基础入门
kotlin中的变量在没赋值前,并不清楚当前变量的类型,只有赋值之后才知道它的类型,Kotlin这种机制叫做类型推到机制。kotlin也可以显式的声明变量的类型,方法则是在变量名的后边加冒号和要声明的类型。
2025-04-29 23:08:04
947
原创 Android系统应用
系统应用Android 随附一套用于电子邮件、短信、日历、互联网浏览和联系人等的核心应用。平台随附的应用与用户可以选择安装的应用一样,没有特殊状态。因此第三方应用可成为用户的默认网络浏览器、短信 Messenger 甚至默认键盘(有一些例外,例如系统的“设置”应用)。系统应用可用作用户的应用,以及提供开发者可从其自己的应用访问的主要功能。例如,如果您的应用要发短信,您无需自己构建该功能,可以改为调用已安装的短信应用向您指定的接收者发送消息。系统应用安装位置Android系统应用通常放在/sys
2022-01-19 17:24:52
7257
原创 Launcher图标角标
前言桌面图标的角标,看着是个很简单的功能,就是在应用的右上角显示当前有几个未读消息;在网上查了资料之后,发现很多同行说,Android原生是没有此功能,平时使用的手机都有该功能,其实是国内手机厂商自己定制的桌面图标角标,且不同厂商之间,方案还不尽相同;但是此次我还是要看Android源生代码究竟是怎么显示应用有新的未读消息,此篇文章是以为记。一很直观,它是显示在应用的右上角的,那么我们要查看它,得先在代码中找到单个应用显示的类,根据上篇文章介绍,应用是在CellLayout平均分配的矩形中显示,可以
2022-01-15 23:37:04
4293
原创 Launcher布局加载流程
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2022-01-13 23:50:57
4668
1
原创 Android线性布局之layout_weight
前言layout_weight按自己的理解就是按比例分配LinearLayout的子控件的大小,为了了解这个属性,接下来就边写代码,边看效果图来理解该属性。正文首先将根布局修改为LinearLayout,将orientation属性设置为horizontal,使LinearLayout的子控件水平排列,再给LinearLayout放三个TextView作为子布局,内容分别显示1,2,3;TextView的宽度设置为0dp,layout_weight的属性都填写为1,代码如下:<?xml ver
2021-07-19 00:28:42
3125
2
原创 Android动画之属性动画
一、前言属性动画可以实现补间动画的所有效果,且还能实现补间动画实现不了的效果,接下来就来学习一下属性动画。二、ValueAnimator的使用 //创建一个从1到100的整型动画 //获取屏幕宽度 int widthPixels = getResources().getDisplayMetrics().widthPixels;// ; //创建一个从1到100的整型动画 ValueAnimator valueAnimator = Valu
2020-12-10 23:53:05
225
原创 Android动画之帧动画
一帧动画就是将多张图片逐帧播放,具体怎么实现,且看下方步骤。二将要播放的图片存放到drawable目录下;在drawable目录下帧动画的xml将该动画设置为控件的背景;在代码中获取动画图片;使用代码对动画进行播放和停止最终动画效果三简单学习一下。...
2020-11-30 23:58:39
141
原创 Android异步消息处理机制之AsyncTask
前言相较于Handler,AsyncTask更简单一点,它是一个抽象类,要实现异步消息,就的自己创建一个类继承AsyncTask,重写要使用的方法,将要在子线程中执行的程序,放在doInBackground方法中,要在更新界面时,子线程中返回的结果在onPostExecute()方法中,怎么显示就任由开发者了,当然还会有其它几个方法,下面会一一解释。AsyncTask的泛型参数在新建一个AsyncTask时,需要指定三个泛型参数:Params、Progress、Result。Params是指执行任
2020-11-29 17:30:13
173
原创 Android异步消息处理机制之Handler
一在Android中异步消息处理机制有Handler以及AsyncTask两种方式,而AsyncTask也是Handler的封装,今天就学习一下Handler机制。二与Handler消息机制相关的类主要有以下四个:HandlerMessageMessageQueueLooper三Handler主要用于发送消息,以及处理消息。发送消息的方法主要是post和send两种。post方法有: public final boolean post(Runnable r) {
2020-11-29 16:40:13
276
原创 Android学习之不能在子线程中修改UI的知识点
认知从开始学Android开始,我就知道不能在子线程中修改UI,只能在主现在中修改,认为它就是个常识,自己每次修改UI,都想方设法的将修改UI的操作放在主线程中,包括使用Handler,View的post方法,runOnUiThread的其中一种。困惑突然想看一下在子线程中修改UI报错的信息,于是写下如下代码: private void errorDisplay() { new Thread(new Runnable() { @Override
2020-11-19 23:49:55
349
原创 tomcat服务器的使用
安装JDK下载安装tomcat点击XXX\apache-tomcat-9.0.20\bin\startup.bat启动服务localhost查看服务是否启动成功将要访问的资源放在XXX\apache-tomcat-9.0.20\webapps\ROOT目录下;例如将图片ai.jpg放在该目录下在网页上可以通过http://localhost:8080/ai.jpg访问该图片。...
2020-07-11 17:09:05
159
原创 Suppressing notification from package com.example.mynotification by user request.
在学Android多媒体Notification时,怎么修改代码,手机端就是不弹通知,翻看Log发现如标题错误,经在网上查资料,发现是手机设置问题,打开手机设置,通知与状态栏,通知管理,找到对应的应用,允许该应用谈通知即可。代码如下: private void createNotification() { Intent intent = new Intent(this, NotifictionActivity.class); PendingIntent pendin
2020-07-03 23:05:55
1077
原创 Android从内容提供者中获取联系人
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...
2020-01-20 23:40:59
558
原创 Android中DialogFragment有白边。
问题所在有的机型中Window默认有标题。解决办法在onCreateVeiw中添加以下代码Window mWindow = getDialog().getWindow;mView.requestFeature(Window.FEATURE_NO_TITLE);
2018-12-17 10:50:11
2338
2
原创 Android进程间通信AIDL踩过的坑
前言Android中使用AIDL传String值,没有问题,当我想传个对象时,却一直报错,迟迟不能解决,网上翻了很多资料也没能找到,下面就把我自己解决的方法,分享出来,当然从其他博客中,也学到了很多知识。问题一Process ‘command ‘XXX\android-sdk-windows\build-tools\27.0.3\aidl.exe’’ finished with non-ze...
2018-10-23 10:18:35
1855
原创 Android之布局文件中属性gravity与layout_gravity
一、 前言在写布局界面时,发现gravity与layout_gravity属性,有时起作用,有时不起作用,虽然知道它俩的大概区别,但是具体在什么情况下使用,就有些模糊不清了,又不是特别难的东西,只是缺乏归类整理。目前知道它俩的区别是,gravity属性是用来设置控件中的内容的位置,layout_gravity属性是用来设置当前子控件在父控件中的位置。二、可以设置的值属性gravity...
2018-08-08 22:13:15
17667
1
原创 Android之Activiy间数据的传递
前言Activity间数据的传递其实是很基础的内容,但是只知道大概,并没有搞清楚到底能够传递哪些内容,借此机会,进行一次整理,尽量将所有情况都涵盖。从当前的Activity传递数据给下一个Activity其实呢很简单,我们都知道启动一个Activity,我们通常是创建一个Intent对象,表明意图,再调用startActivity或者startActivityForResult方法...
2018-07-16 22:13:45
590
原创 Android之隐式意图启动Activity(二)
前言这篇本来是要写Data的过滤规则,翻了好多资料,竟然总结不出一个令我觉得很不错的结果来,所以这篇就写一下自己的思考,如果有哪位朋友找到关于启动Activiyt中Data过滤好的总结,希望发个链接,让本人学习学习,在此非常的感谢。data的匹配规则它有以下几个属性能够设置 <data android:scheme="string" ...
2018-07-13 00:44:33
1275
原创 Android之隐式意图启动Activity(一)
前言大家应该都知道,隐式意图共有三个大的匹配规则,它们分别是:action、category、data,我认为action与category的匹配规则比较像,且相对比较简单为一篇,而data匹配规则,多且复杂,所以将它单列一篇。action的匹配规则如果是隐式意图启动Activity,那么Intent中必须至少有一个action;Intent中的action必须能够与过滤规则中...
2018-07-10 23:54:22
1883
原创 Android之显示意图启动Activity
前言显示意图启动Activity很简单,基本上做过Android的人都知道,怎么去启动,这里就做个简单的总 结!总体分为两种,一种是直接在创建Intent时,就传入Context对象与要启动的Activity对象的 Class类;另一种是使用到ComponentName这个类。通过观察源码发现,其实第一种方式也是使用的 ComponentName类,只是将它封装起来。直接创...
2018-07-10 00:06:01
1251
原创 Android之两个Activity的生命周期
上一篇是一个Activity的生命周期,而这一篇是两个Activity的生命周期。它的操作可以分为以下几个步骤。1、打开应用;2、启动第二个界面;3、关闭第二个界面;4、关闭应用。下面就以上几个操作,查看两个Activity的生命周期。打开应用!启动第二个界面关闭第二个界面关闭应用 从以上的截图我们可以得出以下结论: 启动应用时,MainActivity的生命周期,与一...
2018-07-07 19:03:31
2528
原创 Android之一个Activity的生命周期
总想整理一下知识,可总是因为各种原因搁置。说到底还是懒,但是呢整理的这个心又不死。 所以我想到的解决办法就是,从最简单的知识开始整理记录,如果习惯养成了,那么复杂的 也就没那么复杂了。希望能有所收获!第一、一个Activity的生命周期简单,到底有多简单呢,就是创建了一个项目,只有一个Activity,重写了它的生命周期方 法,就打开与关闭应用,看都走了哪些生命周期方法。如...
2018-07-07 18:08:11
262
原创 是金子总是会发光的?
今天突然觉得“是金子总是会发光的!”这句话很丧,为什么呢?因为我们开始听到这句话的时候觉 得很正能量啊,怎么会丧呢?给人一种还有希望的感觉;可是回头想想,不对啊,有没有人也会这 样想,反正我是金子,不用努力,总有一天我会发光的,我只需要静静的等待就好,我想肯定是有 的,因为我一直就是这样想的。在我的成长过程中,不管是家庭教育还是学校的教育,都会教导我做一个诚实的孩子, 事情是怎 ...
2018-06-23 00:13:58
478
原创 书到用时方恨少
今天是端午节放假的第一天,睡了个懒觉,洗漱完毕之后,煮了公司发的粽子 当早餐(已经十点半了,尴尬脸),利用上午剩下的这一个多小时,写写自己最近 的一些想法,感悟。 距离我四月份搬房到现在已经有两个月了,这中间从自己的生活方式,到自己 心里上的变化都是蛮大的。总的来说,这些变化都是积极的,都是我想要的,所以 最近总有那么一句话,在我内心萦绕...
2018-06-16 12:47:52
432
原创 Java十六进制与字节数组的相互转换
十六进制转换为字节数组先获取到十六进制数字字符串的长度,如果是奇数,在前面补个零;使用字符串的长度,计算出需要几个字节;跟进字节个数创建字节数组;将字符串转换为字符数组;写一个循环,循环的次数为字节数组的长度循环内是讲字符转换为字节,并赋值给当前字节数组的位置字符转换为字节的方法参考后边charToByte();由于十六进制的字节是用二进制的8位来表示的,它又分为高四位,与低四...
2018-06-13 22:04:23
4131
1
转载 十六进制字符串转换为字节数组
第一步、将十六进制的字符串除以二,算出字节数组的长度;第二步、根据字节数组的长度,创建字节数组;第三步、将字符串转换为字符数组;第四步、将字符转换为字节;第五步、十六进制的字节分为高四位与低四位,所以将高四位的字节左移4位,再与第四位的字节相或,就得到一个十六进制的字节;第六步,将十六进制的字节逐个放到字节数组中即可。public byte[] hexStrToBytes(String hexSt...
2018-06-07 22:06:33
21774
4
转载 字节数组异或操作
由于工作的原因,经常与硬件设备打交道,所以对字节数组的操作还是比较频繁的。今天用到了异或操作,就是把字节数组逐个进行异或,基础比较薄弱,看到这样的问题就怕,后边在网上看了下代码,也蛮简单的,随后在这里记录下。public static byte getXor(byte[] data){ byte temp = byte[0]; for(int i=1;i<data...
2018-06-07 21:45:42
15472
原创 Android中View的getLeft()、getRight()、getTop()、getBottom()、getWidth()、getHeight()的关系。
一、getLeft()、getRight()、getTop()、getBottom(),是子控件的左右上下边,到父控件的左边及上边的距离。二、getWidth() = getRight() - getLeft(); getHeight() = getBottom()-getTop();...
2018-03-26 19:31:23
2008
转载 喜欢一个人
伤害你的不是对方的绝情,而是你心存幻想的坚持。爱情永远是两个人的努力,而不是一个人的委屈求全。喜欢一个人,始于颜值,陷于才华,忠于人品,痴于肉体,迷于声音,醉于深情。这样在一起,才是嫁给了爱情,愿你遇到一个成熟的爱人,愿你执迷不悟时少受点伤,愿你幡然醒悟时还赶得上。...
2018-03-07 14:18:20
320
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人