自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 问答 (1)
  • 收藏
  • 关注

原创 Mvp+rxjava2+Retrofit2 结构框架

之前一直用谷歌的mvp模式,不过还是觉得m与p的耦合有点高,前段时间有人推荐给我一个新的mvp结构,其实也不新,只是我没用过而已。这里是它的连接地址:https://github.com/antoniolg/androidmvp它和常用的mvp最大的区别在于她添加了 所谓的‘耦合因子’(这么说显得高端一些,其实就是个接口而已)用来进一步解耦M与P层,我们平日(个人这么用而已)用到的mvp中,与数据源

2017-12-25 14:35:40 322

原创 java web简易博客项目实战简述

大佬级别请绕步~简述: 我android出身,最近工作不忙,抽时间学了几天java后台框架,然后花了几天写完并发布了小到不能再小的博客项目。 众所周知,学后台入门非SSM不可,spring ,springmvc,mybatis。不过又跟大佬们聊到,springmvc有点老,想做好的架构还是选spring cloud。诚然,项目大,当然会考虑到后期的生产环境。对我这种初学者来说,慢慢的接触基础对后

2017-12-11 18:46:09 2826 5

原创 阿里云服务器搭建java环境入门

步骤: 1:拥有服务器 2:连接服务器并安装相关软件 3:配置相关参数开始:1:阿里云官网注册购买并启动服务器。这些操作均可在阿里云控制台实现。并可以看到其公网IP,也就是对外开发的IP,我们也是通过这个来上传和访问服务器。2:连接服务器可以使用XShell,上传可以用Xftp 启动XShell并配置以下信息,其中主机为公网IP,端口默认22,名称自定义。用户名和密码为服务器的账户与密码

2017-12-09 12:42:11 7688 1

原创 Android PopupWindow实现带背景阴影的下滑选择框

先上图:效果还是很丝滑的,这里动画主要用到了属性动画。实现逻辑很简单,动画都是在popupwindow调用showAsDropDown() 和dismiss()时执行。这里主要是注意退出动画的实现,在dismiss()中执行动画是无效的,需要在动画执行完毕后再执行super.dismiss(); 可拓展能力强,可以结合自身需求实现不同的效果。以下是源码:PopupWindow :public cla

2017-11-14 18:06:55 4338

原创 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 276

原创 Dagger2 用@Qualifier解决依赖冲突

Dagger2中,如果Module中有@Provides标注的多个方法同事提供同一类型的依赖,IDE编译时在会报错,通俗的讲就是,Dagger2不知道该用哪个方法提供的依赖。 这里可以通过@Qualifier来解决,@Qualifier是javax.inject包下的注解,限定标识符。@Qualifier自定义注解:@Qualifier@Documented@Retention(Retenti

2017-09-05 14:53:34 1360

原创 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 258

原创 关于RecyclerView的Adapter封装

项目开发中会涉及到很多列表的页面。如果每个页面都写一个adapter,我们估计会疯掉。我现在的目的就是在保证质量的同时要写更少的代码。所以,封装呗。 recyclerview有自己的adapter和视图管理。我们只需要把实例化时要传入的参数泛型抽象,对不同的view实现不同的获取与设置内容的方法即可。Adapter:abstract public class RecyclerViewAdapter

2017-07-05 14:50:46 272

转载 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 356

原创 android6.0开发中遇到的权限坑

android的权限在23以下的版本中自动授权,而这个版本及以上需要用户手动授权。这对用户隐私来说当然有好处,比如我不想app获取我的位置。对开发来说,虽然麻烦是避免不了了,但是也不是很蛋疼。 对于权限问题,系统分为一般权限和危险权限。一般权限在xml中申明就行,而危险权限除了申明外,还需要额外动态申请(运行时)。 具体的权限分类可以看这:权限知识整理 实际开发中遇到的问题:请求读写,系统设置

2016-10-28 15:59:15 1827

原创 观察者模式

最近在研究RxJava,其中将观察者模式用到极致。在继续深入学习之前我特意总结下观察者模式。观察者模式(Observer)又称分发-订阅模式。即目标更新会使注册了的观察者发生更新。一个目标可以有多个观察者。是一种一对多的关系。最简单的例子: 出版社发新书,读者收到消息可以读新书 这里出版社其实就是目标,而读者就是观察者。编码实现: 抽象目标:抽象类或接口 抽象观察者:抽象类或接口 具体目标

2016-09-20 12:37:44 291

原创 Android GrildView实现每一项等高宽,铺满屏幕

先上效果图:图片是等高宽的,并且会根据不同的屏幕分辨率自动适应。 实现方法: 在grildview中配置以下属性。android:numColumns="auto_fit"android:columnWidth="100dp"android:stretchMode="columnWidth"columnWidth只是默认100dp。以上属性的意思是Grildview会根据默认的100dp计算

2016-09-14 17:32:29 1720

原创 Strtus2的基本使用

简单记录下strtus2的使用: 1:导入strtus2的相关包。 有两种方式: 1:手动导包,在网上下载好后【strtus官方下载】,将相应的包拷贝至lib文件夹。 2:创建好项目后,对项目右键–》myecplise–》project facets–》install apache strtus2x。选择相关即可。2:手动导入包后需要自己在src下新建struts.xml文件。自动导入的会自

2016-09-10 17:05:46 539

原创 EventBus3.0使用介绍

有空便过来研究eventbus3.0了。 这里简单介绍他的使用以及基本原理。如何使用(1)首先需要定义一个消息类,该类可以不继承任何基类也不需要实现任何接口。如:public class MessageEvent { ......}(2)在需要订阅事件的地方注册事件EventBus.getDefault().register(this); (3)产生事件,即发送消息EventBus.ge

2016-09-08 15:09:53 357

原创 数据库的事务管理确保数据完整性

数据库操作时,有时会发生异常,比如同时向两个表中插入数据,就有可能发生冲突,第一条数据可能插入成功,而第二条数据可能插入失败抛出异常。这时,不完整的数据对我们来说是非常危险的。所以,为了控制这种风险。可以采取事务来管理sql的执行。 事务最大的特点就是要么都执行,要么都不执行。 直接上个简单的例子:1:获取数据库连接2:执行sql3:事务管理事务管理中,setAutoCommit(boolean

2016-08-30 10:43:08 3075

原创 jsp的内置对象

jsp有九大内置对象:request: 用户端请求,此请求会包含来自GET/POST请求的参数 response :网页传回用户端的回应 pageContext: 网页的属性是在这里管理 session: 与请求有关的会话期 application: servlet正在执行的内容 out: 用来传送回应的输出 config: servlet的构架部件 page: JSP网页本身 ex

2016-08-29 15:24:58 416

原创 Android Retrofit使用(一)

最近在网上看到一些比较不错的东西,在这里记录学习下。这里将讲到Android Retrofit的使用。 首先,导包:retrofit开发要用到的包 下载copy至项目libs下,添加依赖就ok了。开发小实例: 访问此链接会得到json:https://api.github.com/repos/square/retrofit/contributors 接下来的实例就是访问该网址解析json获得

2016-07-23 19:16:37 356

原创 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 21734

原创 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 4473

原创 Fragment中adapter刷新无效的解决办法

最近开发中遇到这样一个问题。从当前fragment onActivityResult() 获得activity返回刷新adapter无效。试了很多办法无果。 后来找到一个办法,就是在适配器里面自己写一个方法来刷新适配器本身。适配器中自定义的方法:public void reflesh(List<Notes> notes){ this.list.clear();

2016-07-08 14:28:22 1652

转载 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 799

原创 Android ScrollView中嵌套GridView,ListView

最近开发中遇到一个问题,就是在ScrollView中嵌套GridView,ListView加载数据时,不管怎样都只显示一条数据。其它的数据都没出来。查询资料后来找到了完美的解决办法: 1:重写GridView,ListViewGridView的重写:public class MyGridView extends GridView { public MyGridView(Cont

2016-06-30 15:03:42 374

原创 Android toolbar 左边距问题

toolbar会有左边距,我被这个东西坑了,怎么也没法把自己的控件放到我想要的位置。后来才发现有左边距这个坑。。。 说来也很好解决,在这里稍作记录。 解决办法: 1:设置单个bar的左边距: 在toolbar控件中加入以下属性即可 app:contentInsetStart="0dp"<android.support.v7.widget.Toolbar android:id=

2016-06-23 15:50:47 5257

原创 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 1057

原创 Android 之nineoldandroids ViewHelper实现动画效果

这里讲到nineoldandroids(动画兼容库) ,其中ViewHelper,这个类是为了兼容以前的api,因为像setAlpha,setTranslationX等方法在低版本中是没有的,所以NineOldAndroids提供了ViewHelper类,使得我们不必关心API版本。Android studio中可以直接导入使用。如果没有的从sdk manager中下载即可使用。 ViewHelp

2016-06-17 09:36:15 8395 1

转载 Android动态变化颜色的牛逼方法

偶然遇到的这个方法,起初我都不知道它是干嘛的,但是结合逻辑一看就明了。 这个方法可以直接使用,只需要传入参数即可:/* Color transition method. */ public Object evaluate(float fraction, Object startValue, Object endValue) { int startInt =

2016-06-16 18:01:05 709

原创 MyEclipse的输入提示配置

很多时候一个好的IDE实时提示能帮助我们更快更准确的开发。那如何配置MyEclipse的输入提示,直接上步骤了:1、打开 Eclipse -> Window -> Perferences -> Java -> Editor -> Content Assist,在右边最下面一栏找到 auto-Activation ,下面有三个选项,找到第二个“Auto activation triggers for

2016-06-14 21:23:25 606

原创 jsp重定向,数据库语言在jsp中的实现

在jsp中,在完成servlet中的请求后,如果不做重定向处理,在表单提交后,页面会跳到该servlet。而往往需要的是提交刷新还是当前页面。这里实现的方式有以下最简单的方式,当然还有最流行的ajax方式,在这里我只记录最简单的方式。ajax以后接触到再更新吧。String path = request.getContextPath(); String base = request.

2016-06-14 21:17:56 419

原创 jsp之表单提交-基础

最近要做后台,在这里记录下表单的提交方式。 网站开发肯定离不开表单(form)的。 也算简单,下面是基于js的提交方式。 HTML: <form name=baseform method="post" action=""> <table width=980> <tr> <th align="left"> 查询条件

2016-06-14 09:46:51 632

原创 Android 实现侧边栏之状态栏颜色适配

最近开发中老师会遇到toobar和status bar这个梗。之前没有多大在意,因为我发现用上toolbar时,手机会自动更改状态栏的颜色,后来我特意用别的低版本手机试了试,简直是个坑。 后来一直想找个最终的适配办法。好像一直没有很好的解决问题,后来弄出了以下方法。虽然有不合理的地方,不过对效果来说没什么问题了,包括低版本的手机也能显示良好。这里主要是通过布局已经主题来实现的。 这里用到了mat

2016-06-13 20:05:03 1314

原创 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 269

原创 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 515

原创 android Zxing二维码之读取手机二维码图片

使用最新(注意这里是使用最新版的基于ZXing3.1封装:https://github.com/xuyisheng/ZXingLib) 功能是很全面的,扫描,生成,读取手机。 在这里只记录下读取手机相册二维码图片时遇到的问题: 就是这个类:RGBLuminanceSource zxing封装好的类,用来处理手机二维码图片的。 之前的版本实例化这个类是这样的:RGBLuminanceSourc

2016-06-02 18:01:29 732

原创 Android基于友盟的第三方登陆

1:申请,申请,申请 Android任何第三方的东西都要在其官网注册id,创建应用并获取key。这里也就同样了。不过申请都是比较简单的,每个官网都有自己的申请方式以及文档说明,这里就不啰嗦了。 主要是讲讲这里的第三方登陆需要注意的点:(这里只介绍qq的第三方登陆,其它的基本类似) 在qq互联官网注册http://op.open.qq.com/的应用名称和在友盟http://www.umeng

2016-06-01 19:40:14 7507

原创 Android软键盘的隐藏与显示

需求:怎么让自己手机上的键盘开启和关闭呢?如 搜索:一个输入框和一个执行搜索的按钮。当输入完毕,点击执行按钮时,默认情况下,软键盘是不会自动关闭的。这样对用户体验来说是不友好的。怎么改?比较简单:这里将用到InputMethodManager 和InputManager ,这是系统封装的类,其中就有方法来控制键盘的开关闭。这里我直接拿出一个对键盘管理的单例模式,在以后开发中可以直接使用:import

2016-06-01 16:37:24 596

原创 android键盘的回车键修改和监听

开发中会遇到这样的业务要求:点击搜索框输入内容时,键盘的回车键应该是搜索。然后点击键盘的搜索时执行搜索操作。这是怎么实现的呢?其实很简单: 1:布局中 在EditText 中加入以下两句就可实现键盘回车键的修改。android:imeOptions="actionSearch"android:singleLine="true"其中android:imeOptions 有多种属性: 1:默认

2016-06-01 16:34:30 16335 3

原创 Android第三方推送(基于JPush极光)

弄了一段时间,算是把Android推送部分弄好了,对以后的开发肯定也是有帮助的。然后想总结一下,第三方的东西比如:地图,IM(即时通讯),推送等,其实使用方法基本都是类似的: 1:官网注册ID,创建应用获取key 2:导入第三方sdk,配置sdk要求的各种jar以及权限 3:使用第三方封装好的各种工具类对自己应用进行功能添加和扩展 接下来,我将介绍下推送部分的实现:1:官网注册: 1:注册

2016-05-31 18:03:25 758

转载 androidstu导入项目一直卡在Building gradle project info位置

转自:http://www.cnblogs.com/baron89/p/4843113.html AndroidStudio导入项目一直卡在Building gradle project info,是因为导入的这个项目使用的gradle与你已经拥有的gradle版本不一致方法有两种,1:下载新的gradle,2:直接修改gradle-wrapper.properties文件,无需去下载gradl

2016-05-31 14:33:33 606

原创 Android隐藏状态栏

代码中:@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); //隐藏状态栏

2016-05-28 14:09:04 428

原创 Android 高德地图的定位,周边搜索

高德地图定位于搜索

2016-05-18 11:34:41 18207 4

空空如也

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

TA关注的人

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