![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术篇
狗剩砸
挽起袖口就是干。。。
展开
-
Mvp+rxjava2+Retrofit2 结构框架
之前一直用谷歌的mvp模式,不过还是觉得m与p的耦合有点高,前段时间有人推荐给我一个新的mvp结构,其实也不新,只是我没用过而已。这里是它的连接地址:https://github.com/antoniolg/androidmvp它和常用的mvp最大的区别在于她添加了 所谓的‘耦合因子’(这么说显得高端一些,其实就是个接口而已)用来进一步解耦M与P层,我们平日(个人这么用而已)用到的mvp中,与数据源原创 2017-12-25 14:35:40 · 334 阅读 · 0 评论 -
Android动态变化颜色的牛逼方法
偶然遇到的这个方法,起初我都不知道它是干嘛的,但是结合逻辑一看就明了。 这个方法可以直接使用,只需要传入参数即可:/* Color transition method. */ public Object evaluate(float fraction, Object startValue, Object endValue) { int startInt =转载 2016-06-16 18:01:05 · 730 阅读 · 0 评论 -
Android将String类型字符串转换成utf-8,gbk格式
最近在做Android的后台时出现手机提交到中文出现乱码,通过以下两步解决了问题。 1:修改 Tomact目录下的Service.xml (安装目录下的\conf下)文件: 添加:URIEncoding="UTF-8"<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"原创 2016-07-13 21:27:24 · 21925 阅读 · 0 评论 -
Android布局实现图片的重复
在drawable中新建资源文件:<bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/ic_launcher" android:tileModeY="repeat"/>说明:tileModeY :纵向重复图片tileModeX :横向重复图片tileMode :铺转载 2016-06-30 22:48:43 · 839 阅读 · 0 评论 -
Android Retrofit使用(一)
最近在网上看到一些比较不错的东西,在这里记录学习下。这里将讲到Android Retrofit的使用。 首先,导包:retrofit开发要用到的包 下载copy至项目libs下,添加依赖就ok了。开发小实例: 访问此链接会得到json:https://api.github.com/repos/square/retrofit/contributors 接下来的实例就是访问该网址解析json获得原创 2016-07-23 19:16:37 · 367 阅读 · 0 评论 -
Android ScrollView中嵌套GridView,ListView
最近开发中遇到一个问题,就是在ScrollView中嵌套GridView,ListView加载数据时,不管怎样都只显示一条数据。其它的数据都没出来。查询资料后来找到了完美的解决办法: 1:重写GridView,ListViewGridView的重写:public class MyGridView extends GridView { public MyGridView(Cont原创 2016-06-30 15:03:42 · 392 阅读 · 0 评论 -
MyEclipse的输入提示配置
很多时候一个好的IDE实时提示能帮助我们更快更准确的开发。那如何配置MyEclipse的输入提示,直接上步骤了:1、打开 Eclipse -> Window -> Perferences -> Java -> Editor -> Content Assist,在右边最下面一栏找到 auto-Activation ,下面有三个选项,找到第二个“Auto activation triggers for原创 2016-06-14 21:23:25 · 625 阅读 · 0 评论 -
jsp重定向,数据库语言在jsp中的实现
在jsp中,在完成servlet中的请求后,如果不做重定向处理,在表单提交后,页面会跳到该servlet。而往往需要的是提交刷新还是当前页面。这里实现的方式有以下最简单的方式,当然还有最流行的ajax方式,在这里我只记录最简单的方式。ajax以后接触到再更新吧。String path = request.getContextPath(); String base = request.原创 2016-06-14 21:17:56 · 434 阅读 · 0 评论 -
jsp之表单提交-基础
最近要做后台,在这里记录下表单的提交方式。 网站开发肯定离不开表单(form)的。 也算简单,下面是基于js的提交方式。 HTML: <form name=baseform method="post" action=""> <table width=980> <tr> <th align="left"> 查询条件原创 2016-06-14 09:46:51 · 652 阅读 · 0 评论 -
Android 实现侧边栏之状态栏颜色适配
最近开发中老师会遇到toobar和status bar这个梗。之前没有多大在意,因为我发现用上toolbar时,手机会自动更改状态栏的颜色,后来我特意用别的低版本手机试了试,简直是个坑。 后来一直想找个最终的适配办法。好像一直没有很好的解决问题,后来弄出了以下方法。虽然有不合理的地方,不过对效果来说没什么问题了,包括低版本的手机也能显示良好。这里主要是通过布局已经主题来实现的。 这里用到了mat原创 2016-06-13 20:05:03 · 1355 阅读 · 0 评论 -
java 之连接mysql数据库
1:新建类: 完成对数据库的连接,并通过返回Connection。 在此之前要记得导入对MySQL数据库的驱动(jar包)。网上一搜很多。import java.sql.DriverManager;import java.sql.SQLException;import com.mysql.jdbc.Connection;public class MyConnection { priv原创 2016-06-13 14:49:36 · 284 阅读 · 0 评论 -
Android adapter 中动态设置控件的方法
这里简单介绍动态设置listview中每一项的高度的方法。 如果直接在adapter中获取控件的LayoutParams会报空指针异常。 比较靠谱的方法是在item布局文件中多嵌套一层LinearLayout: 如下:listview中加载的item布局:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/an原创 2016-07-10 14:26:12 · 4511 阅读 · 0 评论 -
Android Material Design(MD)
Material Design材料设计,一种新的设计方式。先喝杯咖啡简单看看如何设计app与材料设计浅谈:http://www.jianshu.com/p/03b2a5e0410b首先上网址,中文版:http://wiki.jikexueyuan.com/project/material-design/material-design-intro/introduction.html 官方英文文档:原创 2016-06-07 21:57:39 · 544 阅读 · 0 评论 -
android Zxing二维码之读取手机二维码图片
使用最新(注意这里是使用最新版的基于ZXing3.1封装:https://github.com/xuyisheng/ZXingLib) 功能是很全面的,扫描,生成,读取手机。 在这里只记录下读取手机相册二维码图片时遇到的问题: 就是这个类:RGBLuminanceSource zxing封装好的类,用来处理手机二维码图片的。 之前的版本实例化这个类是这样的:RGBLuminanceSourc原创 2016-06-02 18:01:29 · 790 阅读 · 0 评论 -
Android 之nineoldandroids ViewHelper实现动画效果
这里讲到nineoldandroids(动画兼容库) ,其中ViewHelper,这个类是为了兼容以前的api,因为像setAlpha,setTranslationX等方法在低版本中是没有的,所以NineOldAndroids提供了ViewHelper类,使得我们不必关心API版本。Android studio中可以直接导入使用。如果没有的从sdk manager中下载即可使用。 ViewHelp原创 2016-06-17 09:36:15 · 8454 阅读 · 1 评论 -
Android之短信截取
如果需要截取短信,如:自动获取短信中的验证码。 这里有实现方式。 1:权限:<uses-permission android:name="android.permission.RECEIVE_SMS" > </uses-permission> <uses-permission android:name="android.permission.READ_SMS" > </u原创 2016-06-17 15:31:51 · 1102 阅读 · 0 评论 -
jsp的内置对象
jsp有九大内置对象:request: 用户端请求,此请求会包含来自GET/POST请求的参数 response :网页传回用户端的回应 pageContext: 网页的属性是在这里管理 session: 与请求有关的会话期 application: servlet正在执行的内容 out: 用来传送回应的输出 config: servlet的构架部件 page: JSP网页本身 ex原创 2016-08-29 15:24:58 · 423 阅读 · 0 评论 -
java web简易博客项目实战简述
大佬级别请绕步~简述: 我android出身,最近工作不忙,抽时间学了几天java后台框架,然后花了几天写完并发布了小到不能再小的博客项目。 众所周知,学后台入门非SSM不可,spring ,springmvc,mybatis。不过又跟大佬们聊到,springmvc有点老,想做好的架构还是选spring cloud。诚然,项目大,当然会考虑到后期的生产环境。对我这种初学者来说,慢慢的接触基础对后原创 2017-12-11 18:46:09 · 2880 阅读 · 5 评论 -
Android PopupWindow实现带背景阴影的下滑选择框
先上图:效果还是很丝滑的,这里动画主要用到了属性动画。实现逻辑很简单,动画都是在popupwindow调用showAsDropDown() 和dismiss()时执行。这里主要是注意退出动画的实现,在dismiss()中执行动画是无效的,需要在动画执行完毕后再执行super.dismiss(); 可拓展能力强,可以结合自身需求实现不同的效果。以下是源码:PopupWindow :public cla原创 2017-11-14 18:06:55 · 4399 阅读 · 0 评论 -
Kotlin语法杂记
var val var是可变的,跟java中定义变量一样; val是不可变的,类似java中的final关键字,默认实现了get方法;var allByDefault: Int? // 错误: 需要一个初始化语句, 默认实现了 getter 和 setter 方法var initialized = 1 // 类型为 Int, 默认实现了 getter 和 setterval simpl原创 2017-09-20 13:30:17 · 284 阅读 · 0 评论 -
Dagger2入门初探
1:什么是Dagger2 ?简单的说它是DI(动态注入)框架,在降低代码依赖耦合方面效果显著。现由Google在维护。2:如何使用Dagger2 ? 配置: 在项目build.gradle(Project:xxx)中添加如下代码:dependencies { classpath 'com.android.tools.build:gradle:2.1.0' //添加apt插原创 2017-08-31 15:20:57 · 268 阅读 · 0 评论 -
Dagger2 用@Qualifier解决依赖冲突
Dagger2中,如果Module中有@Provides标注的多个方法同事提供同一类型的依赖,IDE编译时在会报错,通俗的讲就是,Dagger2不知道该用哪个方法提供的依赖。 这里可以通过@Qualifier来解决,@Qualifier是javax.inject包下的注解,限定标识符。@Qualifier自定义注解:@Qualifier@Documented@Retention(Retenti原创 2017-09-05 14:53:34 · 1396 阅读 · 0 评论 -
关于RecyclerView的Adapter封装
项目开发中会涉及到很多列表的页面。如果每个页面都写一个adapter,我们估计会疯掉。我现在的目的就是在保证质量的同时要写更少的代码。所以,封装呗。 recyclerview有自己的adapter和视图管理。我们只需要把实例化时要传入的参数泛型抽象,对不同的view实现不同的获取与设置内容的方法即可。Adapter:abstract public class RecyclerViewAdapter原创 2017-07-05 14:50:46 · 279 阅读 · 0 评论 -
20个 android 开源第三方库
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/55805071人家总结的第三方库,我也mark一下。http://blog.csdn.net/crazy1235/article/details/5580507120个开源项目包括recyclerview扩展,动画类库,Toast扩展类库,OkHttp网络请求帮助库(可截取网络信息json转载 2017-02-20 10:59:10 · 378 阅读 · 0 评论 -
android6.0开发中遇到的权限坑
android的权限在23以下的版本中自动授权,而这个版本及以上需要用户手动授权。这对用户隐私来说当然有好处,比如我不想app获取我的位置。对开发来说,虽然麻烦是避免不了了,但是也不是很蛋疼。 对于权限问题,系统分为一般权限和危险权限。一般权限在xml中申明就行,而危险权限除了申明外,还需要额外动态申请(运行时)。 具体的权限分类可以看这:权限知识整理 实际开发中遇到的问题:请求读写,系统设置原创 2016-10-28 15:59:15 · 1872 阅读 · 0 评论 -
EventBus3.0使用介绍
有空便过来研究eventbus3.0了。 这里简单介绍他的使用以及基本原理。如何使用(1)首先需要定义一个消息类,该类可以不继承任何基类也不需要实现任何接口。如:public class MessageEvent { ......}(2)在需要订阅事件的地方注册事件EventBus.getDefault().register(this); (3)产生事件,即发送消息EventBus.ge原创 2016-09-08 15:09:53 · 366 阅读 · 0 评论 -
观察者模式
最近在研究RxJava,其中将观察者模式用到极致。在继续深入学习之前我特意总结下观察者模式。观察者模式(Observer)又称分发-订阅模式。即目标更新会使注册了的观察者发生更新。一个目标可以有多个观察者。是一种一对多的关系。最简单的例子: 出版社发新书,读者收到消息可以读新书 这里出版社其实就是目标,而读者就是观察者。编码实现: 抽象目标:抽象类或接口 抽象观察者:抽象类或接口 具体目标原创 2016-09-20 12:37:44 · 299 阅读 · 0 评论 -
Android GrildView实现每一项等高宽,铺满屏幕
先上效果图:图片是等高宽的,并且会根据不同的屏幕分辨率自动适应。 实现方法: 在grildview中配置以下属性。android:numColumns="auto_fit"android:columnWidth="100dp"android:stretchMode="columnWidth"columnWidth只是默认100dp。以上属性的意思是Grildview会根据默认的100dp计算原创 2016-09-14 17:32:29 · 1763 阅读 · 0 评论 -
Strtus2的基本使用
简单记录下strtus2的使用: 1:导入strtus2的相关包。 有两种方式: 1:手动导包,在网上下载好后【strtus官方下载】,将相应的包拷贝至lib文件夹。 2:创建好项目后,对项目右键–》myecplise–》project facets–》install apache strtus2x。选择相关即可。2:手动导入包后需要自己在src下新建struts.xml文件。自动导入的会自原创 2016-09-10 17:05:46 · 558 阅读 · 0 评论 -
数据库的事务管理确保数据完整性
数据库操作时,有时会发生异常,比如同时向两个表中插入数据,就有可能发生冲突,第一条数据可能插入成功,而第二条数据可能插入失败抛出异常。这时,不完整的数据对我们来说是非常危险的。所以,为了控制这种风险。可以采取事务来管理sql的执行。 事务最大的特点就是要么都执行,要么都不执行。 直接上个简单的例子:1:获取数据库连接2:执行sql3:事务管理事务管理中,setAutoCommit(boolean原创 2016-08-30 10:43:08 · 3145 阅读 · 0 评论 -
Android基于友盟的第三方登陆
1:申请,申请,申请 Android任何第三方的东西都要在其官网注册id,创建应用并获取key。这里也就同样了。不过申请都是比较简单的,每个官网都有自己的申请方式以及文档说明,这里就不啰嗦了。 主要是讲讲这里的第三方登陆需要注意的点:(这里只介绍qq的第三方登陆,其它的基本类似) 在qq互联官网注册http://op.open.qq.com/的应用名称和在友盟http://www.umeng原创 2016-06-01 19:40:14 · 7526 阅读 · 0 评论 -
Android软键盘的隐藏与显示
需求:怎么让自己手机上的键盘开启和关闭呢?如 搜索:一个输入框和一个执行搜索的按钮。当输入完毕,点击执行按钮时,默认情况下,软键盘是不会自动关闭的。这样对用户体验来说是不友好的。怎么改?比较简单:这里将用到InputMethodManager 和InputManager ,这是系统封装的类,其中就有方法来控制键盘的开关闭。这里我直接拿出一个对键盘管理的单例模式,在以后开发中可以直接使用:import原创 2016-06-01 16:37:24 · 628 阅读 · 0 评论 -
Android读取系统mp3文件
Android读取系统音乐文件原创 2016-05-12 16:14:45 · 2976 阅读 · 0 评论 -
Android 网络请求,应用的下载与安装
今天总结下Android的网络部分。今天实现应用的下载和安装。 我的实例:下载本地站点下的APK,在通知栏显示下载过程,下载完成后点击通知栏安装应用。这里说的应用可以是网上的,也可以是本地的。这里说的本地是指基于免安装的tomcat —> webapps站点下的,怎么使用免安装的tomcat读者可上网搜索,也可以直接用流量访问其他站点,类似www.CSDN.com 应用宝等。不差钱或者有无线的可以原创 2016-05-04 14:52:27 · 696 阅读 · 0 评论 -
Android自定义下载状态栏
自定义下载状态栏原创 2016-05-12 15:41:05 · 608 阅读 · 0 评论 -
Android调用手机系统资源
Android调用系统设备原创 2016-04-29 14:26:43 · 498 阅读 · 0 评论 -
Content Provider实现跨应用数据库共享
ContentProvider原创 2016-04-29 12:37:46 · 947 阅读 · 0 评论 -
Android 读取手机音乐,视频,图片
Android 通过 content provider(内容提供者)获取手机媒体存储原创 2016-04-28 16:54:34 · 900 阅读 · 0 评论 -
Android GreenDao 的使用详讲
GreenDao 第三方数据库插件原创 2016-04-28 16:31:29 · 561 阅读 · 0 评论 -
Android高德地图的定位
Android高德基础定位原创 2016-05-10 17:47:53 · 7253 阅读 · 0 评论