- 博客(22)
- 资源 (40)
- 收藏
- 关注
原创 自定义控件实战<六> TabLayout控件的实现
上一篇文章实现了一个折线图控件,这篇文章我们要实现一个类似TabLayout的自定义控件一、首先看一下我们这次要实现的效果图:二、接着看一下如何使用这个控件TabLayoutViewActivity.java代码:public class TabLayoutViewActivity extends AppCompatActivity { private ViewPager viewPage
2017-03-30 17:03:43 1330
原创 TabLayout控件的使用(二)
本文接之前写的文章 TabLayout控件的使用(一)我们在使用TabLayout控件的时候,有时候需要我们去修改下划线的长度,如何修改TabLayout控件的下划线长度呢?查阅官方文档API许久,没有找到合适的API接口,好吧,还是查阅TabLayout控件源码,用反射处理修改一下他的属性吧。主要用到的一个属性是一个名为mTabStrip的字段属性。大概讲述一下思路,我们通过反射获取到TabLa
2017-03-29 17:07:25 1133
原创 PopupWindow在Android7.0系统中显示位置错误
如上图所示,我是希望用户点击左上角的 “全部行业” 按钮,在标题栏的底部弹出popWindow的 cb_selectShopCondition.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void o
2017-03-29 14:49:30 3772 6
原创 AndroidStudio常用插件
1、ButterKnife Zelezny ButterKnife 注解生成器,使用起来非常简单方便,是使用频率非常高的一个插件!2、GsonFormat 我们和服务器对接,大多时候服务器返回的是json字符串,而客户端需要根据api接口生成相应的实体类,这个插件可以帮我们实体化对象。3、Parcelable java对象有两种序列化的方式:Serializable(UUI...
2017-03-28 16:31:01 521
原创 NDK学习笔记<五> 简单模拟aLiPay支付流程
上篇文章中,我们实现了C语言调用java方法,这次简单模拟AliPay支付流程。首先是Activity的代码:package com.shi.androidstudy.alipay;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import a
2017-03-21 13:43:47 921
原创 NDK学习笔记<四> C语言调用java方法
上篇文章中,我们使用java调用JNI,实现了简单的加减,加密操作,这次我们来看看C语言如何调用java方法。首先是Activity的代码:/** * C 调用 Java 例子 * * @author AFinalStone * */public class MainActivity extends Activity { //也就是你mk配置文件中的 LOCAL_MODULE
2017-03-21 11:52:15 1168
原创 NDK学习笔记<三> java调用JNI进行简单加减,加密操作
一、我们新建一个普通的Android项目,这里我取名为MYJNI,接着编写MainActivity.java的具体代码package com.shi.androidstudy.myjni;import android.os.SystemClock;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;
2017-03-21 10:43:06 914
原创 NDK学习笔记<二> 使用javah生成头文件
工欲善其事必先利其器,进行NDK开发的第一步,当然是NDK的开发环境搭建了,这里简单讲述一下个人搭建过程一、在AndroidStudio中依次点击Tools->Android->SDK Manager二、在Android SDK中点击SDK Tools,然后勾选LLDB和NDK选项,然后OK确认,进行NDK Build的下载三、成功更新下载NDK Build之后,我们要进行NDK环境变量的配置,右键
2017-03-21 10:12:23 722
原创 NDK学习笔记<一> 初步认识JNI|成功搭建NDK开发环境
什么是JNIJNI,英文全名为:Java Native InterfacejNi就是java调用本地方法的技术,最简单的来说,java运行一个程序需要要和不同的系统平台打交道,在windows里就是和 windows平台底层打交道,mac就是要和mac打交道,jvm就是通过大量的jni技术使得java能够在不同平台上运行。而使用了 这技术的一个标志就是native,如果一个类里的一个方法被nat
2017-03-21 09:49:49 1921
转载 莫让奔波收效甚微
职场感悟1:聚焦你的目标!!某朋友近年职场危机感很严重,在同一年,既报考某名校的在职研究生,又报考软考的信息系统项目管理师高级职称考试,接着,又申请调离原项目,去一个全新的项目,而且申请从技术转管理。结果:在职研究生没考上,信息系统项目管理师高级职称一门没及格导致没过,新岗位新工作没多大成果,辛辛苦苦忙了一年,到头却是一场空,而且感觉因为时间有限,这三件事情没一件都有遗憾,感觉都没完全尽力,多少生出
2017-03-16 12:55:01 361
原创 启动另外一个app
最近,一个app启动另一个app,这个玩法挺火的嘛,有没有试过更新QQ到5.1版本,QQ的健康里面就可以添加其他app,实现从QQ跳转到其他app应用。这个挺好玩的,一下子带来了多少流量啊。一、先来几行代码,一个app启动另一个app// 通过包名获取要跳转的app,创建intent对象 Intent intent = getPackageManager().getLaunchIntentForP
2017-03-15 16:11:27 578
原创 App开发常用开源控件收集(持续更新中)
控件1、SmoothCheckBox控件2、 AVLoadingIndicatorView控件3、 MaterialEditText控件4、MaterialSearchView
2017-03-13 17:12:01 1182
原创 设计模式总结笔记<四> 观察者模式
一、定义观察者模式定义了一个一对多的依赖关系,让多个观察者对象同时监听同一个主题对象。 当这个主题状态发生改变时,会通知所有观察者对象,让它们自动更新自己。二、类似说明聊天室程序的创建。服务器创建好后,A、B、C三个客户端连接好公开聊天。A向服务器发送数据,服务器再将数据分别发送给其他在线客户。 也就是说,每个客户端需要更新服务器端的数据。网站上,很多人订阅了“Java主题”的新闻。当有这个主题
2017-03-13 11:30:12 788
原创 Hibernate学习笔记<一> 初步认识Hibernate
一、为什么需要hibernate故事1小明长大了,打算出国旅游,想周游世界,小明想先去德国,但是小明不会德语,于是小明通过一年的努力,终于学会了德语,然后小明去德国旅游了一圈,充分的感受到了德国的文化风情。回来之后,小明又想去埃及了,但是小明又不会埃及语言,于是小明只能再花一年时间学习埃及语言了。。。。后来小明发现,这样实在是行不通,因为小明还有好多国家想去,这个时候有人出主意,给小明找个特别牛
2017-03-12 10:22:38 467
原创 AndroidStudio 导入github上面的项目
步骤阅读.1首先ctrl+alt+s(前往settings),选择Version Control下的git选择Git,然后看自己Path to Git executable 是否有git的安装路径,有的话直接点击“OK”即可步骤阅读.2首先ctrl+alt+s(前往settings),选择Version Control下的GitHub,在login和password中分别填入github(其实
2017-03-10 21:33:49 972
原创 IDEA错误收集
错误1使用IDEA或者AndroidStudio把项目分享到github上的时候遇到了错误提示:IDEA can't login to GitHub解决方法:修改host为github.com,然后登录输入账号密码就不会在提示错误了错误2把项目分享到提交到github上的时候遇到了错误提示:Failed with error: repository 'https://github.com/AFina
2017-03-10 18:30:57 587
原创 页面状态管理器,让布局飞起来
页面状态管理器在我们平时的项目开发当中一般都会有不同的布局View之间的切换,比如:loadingView, contentView, errorView等等 ,本项目就是用一个管理类来把这些布局view管理封装起来,使view之间的切换更加简洁方便。首先感谢 chenpengfei88的statusLayout项目点我查看效果图本项目对StatusLayoutManager和StatusL
2017-03-10 17:11:03 1503
转载 设计模式总结笔记<三> 建造者模式后篇
定义: 建造者模式:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。实用范围 1、当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 2、当构造过程必须允许被构造的对象有不同表示时。角色 在这样的设计模式中,有以下几个角色: 1、Builder:为创建一个产品对象的各个部件指定抽象接口。 2、ConcreteBuilder:实现Builder
2017-03-09 14:41:00 398
转载 设计模式总结笔记<三> 建造者模式前篇
一、场景 当需要生产一辆汽车时,我们需要为其装配发动机、轮胎、座椅等等部件,这个装配过程是比较复杂的而且也需要较高的组装技术。而建造者模式(Builder Pattern)就是为了将部件与组装分离开。二、 概念 将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 与抽象工厂的区别:在建造者模式里,有个指导者,由指导者来管理建造者,用户是与指导者联系的,指导者联系建造
2017-03-09 14:38:13 456
转载 设计模式总结笔记<二> 工厂模式
工厂模式工厂模式主要是为创建对象提供接口,将创建对象的过程隔离起来,实现了创建者与调用者的分离,提高了程序的灵活性。 核心本质:实例化对象,用工厂方法代替new操作。将选择实现类、创建对象统一管理和控制,从而将调用者跟我们实现类解耦。工厂模式分类:简单工厂模式(Simple Factory)工厂方法模式(Factory Method)抽象工厂模式(Abstract Factory)
2017-03-09 14:28:10 408
转载 设计模式总结笔记<一> 单例模式
Java单例模式是一种常见且较为简单的设计模式。单例模式,顾名思义一个类仅能有一个实例,并且向整个系统提供这一个实例。 单例模式的特点:单例类仅能有一个实例。单例类必须为自己创建实例。单例类必须向外界提供获取实例的方法。 以下是几种实现方法一、懒汉式单例(能够延时加载)public class SingleTon { private static SingleTon insta
2017-03-09 14:17:22 465
转载 设计模式总结笔记之前言与介绍
前言 在我平时的学习与项目工作中,经常会纠结于类的框架搭建,以及类间的关系梳理,而当我通过查看一些牛人的代码解释时总会有一种有一种豁然开朗之感,感觉别人写的代码层次清晰,易于理解。久而久之,我确实感觉到了设计模式在项目工作中的重要性,所以这段时间我会简单的学习Java中的设计模式,当然深刻的理解设计模式需要有足够的项目经验,目前我只希望大致了解各种设计模式功能,希望在以后的项目中能够使用并加深理解
2017-03-09 14:11:03 360
闪屏页ShapeDemo
2016-08-30
选择本地图片
2016-05-17
Fragment切换动画
2016-04-26
选择本地照片
2016-04-26
JNA开发的jna.jar以及.so库文件
2017-09-04
TabLayout控件
2017-03-30
Android性能测试工具Emmagee
2017-02-20
SpringMvc简单demo05
2017-01-17
SpringMvc简单demo04
2017-01-16
SpringMvc简单demo03
2017-01-16
SpringMvc简单demo
2017-01-14
SpringMvc框架
2017-01-14
安卓6.0权限申请
2017-01-07
SaveScreen
2016-12-27
获取webview内容并解析
2016-10-12
多渠道打包
2016-10-11
安卓JS交互
2016-10-09
属性动画的基本使用
2016-09-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人