- 博客(31)
- 资源 (12)
- 问答 (2)
- 收藏
- 关注
原创 深究Java foreach循环的实现原理和其中的坑
集合、数组的遍历是必不可少的开发工具,foreach又是那么甜,二者走到一起会发生什么呢?这篇文章带你一起尝一尝其中的酸甜苦辣!
2019-08-29 15:38:49 3813 2
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(4)完结篇
在这个系列的前几篇文章中,从最初简单的服务器环境搭建、MySQL数据库的安装、Servlet 的原理及使用、数据库的连接及CURD操作、Android和服务器GET/POST数据交互,到最后JSon格式报文的使用,我们已经将这个过程完整的走完一遍,但是其中用的代码都是片段式的,没有一个清晰的结构,甚至有些代码只是单纯地为了说明用法,还有一些朋友提出说代码中有一些自定义的方法没有说明,所以我们最后来一个总结篇,把之前的代码优化规整一下,顺便把之前的一些问题明确一下。 先从 Android 部分
2017-05-09 18:06:56 15046 58
原创 VMware虚拟机能ping通宿主机,但宿主机ping不通虚拟机
VMware 安装完虚拟机,检查网络联通性时候发现了比较奇怪的现象:宿主机、虚拟机都是可以访问外网的,虚拟机 ping 宿主机正常,但是宿主机 ping 不通虚拟机正常。
2022-06-09 22:47:51 1302 1
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(1)服务器环境搭建
做 Android 开发一年多了,虽然不敢说有多精通,但也相对熟悉。做久了就会发现 Android 在行外人眼中是多么高深(包括 IOS 也一样),但是我们自己知道其实 Android 和 Web 前端其实本质上是没有多大的区别,只不过一个是显示在浏览器中,一个是显示在手机上而已。慢慢地,你会发现移动端(Android、IOS、WinPhone、WebAPP)其实涉及到的业务逻辑是很少很少的——无关孰优孰劣,这是分工的不同,移动端毕竟硬件资源有限,适合于简单的计算和交互处理,业务逻辑什么的放在资源更富裕的服
2020-02-25 16:52:23 73480 27
原创 【相机】(2)——WebView中打开相机、文件选择器的问题和解决方法
上一篇[Intent调相机的2种方式以及那些你知道的和不知道的坑]中完成了对 Intent 调起系统相机、结果处理以及一些问题的应对。其实上篇文章还是因为今天的主题 **WebView中调用系统相机** 而起,因为涉及到调用相机本身的一些问题之前不是很明确,所以专门搞了一下,记录下来,所以如果调
2017-09-15 10:15:35 11229 5
原创 【相机】(1)——Intent调相机的2种方式以及那些你知道的和不知道的坑
要不要都行的开篇随着现代信息量的疯狂增长、信息的快速交流,单纯的文字信息已经难以满足日常、工作的沟通,一张图片往往能达到一图胜过千万言的效果,前段时间不是盛行“有图有真相的”说法;还有一些场景则需要通过上传照片来验证身份的合法性,比如手机银行要求上传身份证正反照,手持身份证照 ……废话多了点,总之,作为移动端开发者的你,肯定会遇到这样那样拍照上传的需求,接下来我们来试试 Intent 调用 Andr
2017-09-12 19:09:36 4069 2
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(3-3)Json数据交互
这篇文章实在是耽搁了太久了,唉,人生呐,怎一个懒字了得!都不好意思扯会儿淡了,进入正题吧。上篇我们将 Android 和 Servlet 进行 POST 方式进行数据交互搞通了,但是在例子中传输的数据是以最简单的 String 类型来举例的,下边我们就来用现在流行的 JSON 格式跑一个。Json,是个轻量级的数据交换格式,但具体有什么优劣、使用场景有哪些、或者和别的数据格式对比如何,这些不是我们本
2017-04-24 22:18:34 12981 18
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(3-2)Android 和 Service 的交互之POST方式
今天是圣诞节,虽说我本人对这个西方节日没什么感觉,但毕竟还是有很多小年轻人(自认为已然脱离年轻人的航道)挺在意这个节日的,在这里祝大家圣诞快乐吧(要是凑巧你也没什么感觉,那就预祝元旦快乐)! 闲话少叙,继续我们的正题。得益于上一篇文章【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(3-1)Android 和 Service 的交互之GET方式 所做的思路修改,我
2016-12-27 16:45:25 14313 12
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(3-1)Android 和 Service 的交互之GET方式
好久没更新了,罪过罪过。最对不起的人莫过于那些支持和等待在下拙文的诸位,在此道一声抱歉。管窥之见,侥幸博得各位认同,给了我莫大的鼓励。 话休絮烦,文接前章。 到【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-3)Servlet连接MySQL数据库为止,我们已经将服务端的部分走通了:通过 Servlet 连接 MySQL ,分析业务需求进行响
2016-12-20 20:36:57 33991 91
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-3)Servlet连接MySQL数据库
在【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(1)服务器环境搭建中我们搭建了完整的服务器开发环境,但是接下来的两篇介绍 Servlet 的并没有用到 MySQL数据库,因为仅有的验证登录业务也是模拟的,今天我们就来说说 Servlet 中使用 MySQL 的方法。
2016-07-31 01:44:15 31857 98
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-2)Servlet的使用
在上一篇【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-1)Servlet 的使用中我们只是简单的对 Servlet 的任务、在服务器中的地位有了一个大概的了解,完成了在一个全新的 WorkSpace 中创建第一 Dynamic Web Project ,并创建第一个 Servlet ,解决期间可能遇到的常见问题,还留了不少的内容重要内容没有完成,今天我们来继续完成这些:
2016-06-20 20:25:42 23573 23
原创 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-1)Servlet的使用
服务器接收来自不同用户的不同的请求(当然是以该服务器作为请求目标的那些请求),分析不同的请求,控制模块将各自的请求分送至对应的 Servlet (如登陆请求,则将登陆数据送至LoginServlet),然后 Servlet 根据请求内容处理业务逻辑(如登陆请求则解析用户名密码,并和数据库中保存的用户名密码进行对比,得出是否是合法用户的结论),完成响应数据的封装返回给控制模块,控制模块再将该响应返回给对应的请求用户,这样即完成一次网络交互。
2016-05-31 11:52:00 37999 61
原创 SVN问题之——org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir
今天在 Eclipse 中用 SVN 插件提交代码时遇到 org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir 的问题,"SVN 客户端异常:试图锁定一个已经锁定的目录"。提交代码的时候,SVN 所做的工作中有一个操作步骤是"锁定",所以才会有"Attempted to lock "这一步,至于"an already-locked dir",我忽然想到,昨晚下班我尝试过一次提交代码,但是由于
2016-03-09 10:43:23 61030 28
原创 APP接入QQ登陆功能报错“该应用非官方正版应用,请到......100044”的几种错误
最近在学习APP接入“QQ登陆”功能时,一动手就遇到遇到“该应用非官方版本正版应用,请去应用宝下载正版后进行qq登录。(错误码100044)”的问题,如下图: 捣鼓来捣鼓去就是不知道哪里出的问题,腾讯开发平台的文档都翻了十几遍也没有相关的问题说明,还是网上有大神啊,陆陆续续找出来一些会导致此错误的情况进行记录,给遇到同样问题的你提供一条捷径。
2016-02-16 16:07:31 57322 7
原创 ListView点击Item展开隐藏项(单项展开、多项展开、复杂布局时的展开处理)
手机屏幕毕竟有限,当我们要显示较多数据时便不得不舍去一些次要信息,将主要信息优先显示,也使显示效果更加简洁美观。遇到类似的需求,我们使用最多的就是 ListView ,而如果每次点击一个 Item 都要跳转到下一页查看详情,查看另一个还要返回列表重新进入另一条详情,使得操作繁琐体验降低。此时可隐藏和展开 Item 的 ListView 便应运而生,这不是一个新的控件,只是我们灵活使用造出来的用法,下边我就来实现 ListView 点击 Item 展开隐藏项,包括列表单项展开、多项展开、复杂布局展开的实现,先
2016-02-01 14:19:52 17071 12
原创 Activity设置全屏显示的两种方式及系统自带theme属性解析
设置Activity隐藏标题栏、设置Activity全屏显示在我们开发中会经常用到,毕竟手机屏幕大小有限,有时候是为了显示更多的信息而舍弃一些不必要的界面开支,首当其冲的就是标题栏,接下来就是状态栏;有时候是为了界面的简洁和美观……不举例子了,相信你肯定遇到过这样的需求,直接入正题: 设置隐藏标题栏、全屏显示常用的有2种方法(和Android开发中大多数属性的设置方法一样)
2016-01-08 09:14:51 16565 2
原创 Android完美获取状态栏高度、标题栏高度、编辑区域高度的获取
简单说明一下(上图Activity采用默认Style,状态栏和标题栏都会显示):最大的草绿色区域是屏幕界面,红色次大区域我们称之为“应用界面区域”,最小紫色的区域我们称之为“View绘制区域”;屏幕顶端、应用界面区之外的那部分显示手机电池网络运营商信息的为“状态栏”,应用区域顶端、View绘制区外部显示Activity名称的部分我们称为“标题栏”。下边给出4中状态栏高度获取和2种标题栏获取高度的方法——
2016-01-07 17:52:15 96260 20
原创 Android 视图框架系列2/3——SurfaceView视图框架
SurfaceView 继承于 View ,所以同样拥有触屏监听、按钮监听等方法,但是请注意,SurfaceView 看名字就和 Surface 脱不了干系,Surface 是 Android 中一个很重要的类,有必要了解一下。每个 View 在和屏幕绑定时都会关联一个对应的 Surface,你可以把 Surface 理解成一块屏幕缓存。但从源码可以看出 SurfaceView 还有一个 Surface 类型的成员变量,所以 SurfaceView 就拥有了两个内存区。 这里就该说 SurfaceView
2016-01-06 11:51:10 2741 3
原创 Android 视图框架系列1/3——View视图框架
View 是 Android 开发中最基础也是最本质的视图基类,在开发中要想实现自定义的控件,大多都是直接继承自View,因为那些可以继承View的子类(甚至是子类的子类)的控件其实都是修修改改,只是接触到自定义控件的皮毛而已。具体还是看Android自定义控件开发系列(零)——基础原理篇吧,不必再重复了。 不管是游戏开发还是内容性 APP 开发,继承 View 主要还是重写 onDraw(Canvas canvas)、onTouchEvent(MotionEvent event)、onKe
2016-01-06 11:31:03 2030 2
原创 闲话Android游戏开篇
游戏,这个词专门查了一下词典,还真没有什么明确的定义。什么是游戏,可能没必要给它下个明确的定义,也没有实际的意义,只要有主体参与的以获取快感为目的的活动都可以称之为游戏。这里指出了游戏的两个要素:参与主体和获取快感的目的。请不要产生“你怎么在这瞎扯蛋,我又不是来学哲学的”的想法,我解释这个是有目的的——
2016-01-05 22:10:06 1289 1
原创 Android自定义控件开发系列(三)——仿支付宝六位支付密码输入页面
在移动互联领域,有那么几家龙头一直是我等学习和追求的目标,比如支付宝、微信、饿了么、酷狗音乐等等,大神举不胜举,他们设计的界面、交互方式已经培养了中国(有可能会是世界)民众的操作习惯:举个小例子,对话框“确定”按钮的左右位置就很有学问,如果大家都是左边取消右边确定,你的作品偏偏相反,就会导致用户在操作时候很不适应,甚至会习惯性点错,这一小小的问题将严重影响产品的体验,闲话少说,开始...
2015-11-25 22:17:04 19818 12
原创 Android开发中经常用到的工具
本文总结Android开发中经常会用到的各种工具,包括一些好的工具软件、资源类网站等。对于一些需要注册什么的,如果你嫌麻烦,我也提供了我的帐号密码给你用(反正就是下载一些东西,没啥风险吧,希望你好用,但是不要随意粘贴,谢了)。 全是本人亲身实践总结,绝无虚假编造之举,不定时更新,敬请期待。
2015-11-20 09:35:53 1562 2
转载 老程序员给初学者的一些建议和忠告
网上看到的一篇好文章,自己当年没有读到是损失,现在希望更多的师弟师妹因为这篇文章避免这个损失!请记住——我不会以码农自卑,但一定以常年码农为耻!
2015-11-15 00:33:15 9594 7
原创 用shape、selector自定义样式美化控件
有的人说“自定义控件”,不错,自定义控件能实现这样的效果,甚至更加美好,这个毋庸置疑!但是这里用自定义控件显然大材小用了——如果仅仅要求这些显示效果的话,根本用不到自定义控件这样的大工程——简简单单一个样式文件(shape或selector)就搞定了,下边我们来详细看看这两种文件
2015-10-27 14:08:19 1780
原创 Java/Android中的函数调用&回调函数&自定义回调函数
在Android的学习过程中经常会听到或者见到“回调”这个词,那么什么是回调呢?所谓的回调函数就是:在A类中定义了一个方法,这个方法中用到了一个接口和该接口中的抽象方法,但是抽象方法没有具体的实现,需要B类去实现,B类实现该方法后,它本身不会去调用该方法,而是传递给A类,供A类去调用,这种机制就称为回调。其实,回调函数就是在一个不确定实现的方法METHOD中用interface或者它的抽象方法留个口子,留给具体调用者(调用前边那个不确定的方法METHOD)在调用时提供具体实现来补上那个口子。从而达到更灵活地
2015-10-23 12:47:01 36942 33
原创 Android自定义控件开发系列(零)——基础原理篇
在后边的文章中发现在说Android自定义时,有时候要重复解释很多东西,所以想想返回来增加一篇“基础原理篇”,直接进入正题吧—— 首先的问题是:在Android项目开发中,什么时候需要自定义控件呢? 我们在日常开发中,可能会想到很好的项目方案(那么恭喜你,你很有产品经理的素养和潜质),或者是遇到很好的设计方案(也恭喜你,你遇到一个很有品味和审美的...
2015-10-14 20:14:06 3096 4
原创 Android自定义控件开发系列(二)——带清除按钮的圆角输入框
接着上一篇Android自定义开发系列(一)继续: 由于上一篇的例子做得比较粗糙,也是因为那个只是个简单的入门,只是演示了一下通过组合已有控件开发自定义控件的几个途径。那样的例子连自己都感觉不好意思啦,那么今天我来做一个稍微美观、实用、性能更好的自定义控件,也是大家在平时开发中使用广泛的控件——自定义一个带清除按钮的输入框,先看一下效果:
2015-10-14 16:10:14 3602 1
原创 Android自定义控件开发系列(一)——第一次动手做自定义控件
Android系统提供的控件多种多样,以至于很多初学者经常忘了还有这样那样的控件没用过甚至没听过。尽管如此,但是系统控件大多比较死板,而且不够美观,很多多样化的显示或是交互方式都没法完成。每每遇到这种情况,就需要我们来开发我们自己的控件了——所谓的“自定义控件”。接下来我们就一步一步扎扎实实的从头开始Android自定义控件的开发。
2015-10-10 15:11:34 6744 18
原创 Android之Activity之间的数据通信方式大全(二)
接着上篇Android之Activity之间的数据通信方式大全(一)继续(3)使用SharedPreference实现Activity之间的数据通信SharedPreference是Android中最简单的文件本地化存储方式,Android API也提供相当简单的方式来进行读写操作。
2015-09-30 11:08:34 3665
原创 Android之Activity之间的数据通信方式大全(一)
最近二期项目正在讨论需求,本人小小程序员只有搞搞维护的份。刚工作不久,技术经验不足,随时准备找份更好的工作,闲来无事,看看Android面试经典啥的,就看到有问Activity之间数据通信方式都有哪些(*只是Activity之间通信,不讨论Service、Broadcast),忽然想想自己也不是很确定了解的全不全。看了挺多文档,大多只涉及到其中几点,现在整理一下,共自己和大家参考,如有欠缺欢迎留言指
2015-09-29 23:20:09 11278
原创 Android Studio错误代码不提示问题解决
由于最近项目需求,我们项目组决定将之前的项目从Eclipse搬到Android Studio上来,毕竟google花大力气为亲儿子定制的IDE肯定比Eclipse走的更远!废话少说,在AS的使用时确实遇到不少问题,比如快捷键的设置、工程结构的变化、软件的使用习惯等等。 下面解决一个坑死人的“大坑”——之前熟悉过AS,今天打开AS升级了一下版本,打开以后新建工程……试着随意写几行代码练练手,
2015-09-24 11:11:02 35806 33
Tomcat+MySQL为自己的APP打造服务器(4)完结篇Demo
2017-05-09
iClap集成AndroidSDK
2016-03-15
ListView Item点击展开隐藏项
2016-01-28
FastStone Capture8.3
2015-12-18
Android自定义饼状图
2015-10-21
MyEditText自定义带清除按钮的输入框
2015-10-14
关于EditText中英文下设置不同最大输入长度的问题
2016-01-12
Android Studio的工程代码怎么给别人用?
2015-10-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人