自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 用ViewPager写个不一样的列表效果

先来个效果 分析需求:靠近中间的item始终压在两边。滑动后中间的始终在最下面。效果的实现大致有两种,第一种:自定义RecyclerView LayoutManager 通过onLayoutChildren() 自己摆放控件,绘制需从屏幕两边的控件往中间绘制,这样才能保证覆盖层级没有问题,同时需要重写父类scrollHorizontallyBy() ,在其中调用offsetChi...

2018-06-06 15:06:06 582

原创 自定义桌面小部件

RemoteView 自定义桌面小部件效果如上图, class AppWidgetProvider extends BroadcastReceiver,不难看出桌面小部件本质上是一个广播,至于为什么是一个广播的形势,我猜…是因为桌面小部件运行在SystemService进程中,通过PendingIntent这种方式传递,避免了自己写IPC通信。自定义小部件统共分几步1.定义小部件界面在layout

2017-11-22 17:36:50 3778

原创 BrainFuck 人肉编译规则

简介Brainfuck是一种极小化的计算机语言,它是由Urban Müller在1993年创建的。由于fuck在英语中是脏话,这种语言有时被称为brainf*ck或brainf**k,甚至被简称为BF。 也算是一个奇葩语言吧,不过好像没啥实际作用,因为太轻量了,只能用于表示简单的某些简短的字符串(推荐装逼表白使用吧,其它大概没啥卵用),解析规则还挺有意思的,好久没写博客了,记录一下上午研究成果.

2017-11-08 14:23:54 6005 1

原创 从启动一个未安装Apk的页面入门插件化开发

什么是插件化开发一个Android应用在开发到了一定阶段以后,功能模块将会越来越多,APK安装包也越来越大,用户在使用过程中也没有办法选择性的加载自己需要的功能模块。此时可能就需要考虑如何分拆整个应用了。 举个栗子,好比小时候玩的小霸王游戏机,你刚买回家的只是一个插卡带的机器,就好比最初下载的apk,当你发现你想玩某一款游戏的时候,就去买专门的卡带插进去即可,而不是非得把游戏一下子全买下来.插件化

2017-09-07 16:42:23 1171

原创 六边形的RecyclerView

吐槽来个效果图吧先~ 哎╮(╯▽╰)╭本月的开发项目终于在月底的时候拿到了接口,所以赶紧用迅雷掩耳不及盗铃之响叮当之势撸完了那个从Eclipse中导入的古董级项目.今天早上看到了个效果,感觉还挺有意思的,照着撸了一下,记录总结一下实现过程吧Github地址 https://github.com/fushuangdage/CustomView简介其实也没啥,这个动画效果是Recycler

2017-08-31 15:05:59 315

原创 自定义软键盘,随机数字位置键盘

简介今天在掘金上看了一篇文章,实现自定义软键盘,发现其实实现方式比较简单,不需要改动系统api,只是单纯的加载自己的键盘布局,隐藏系统弹出的键盘,实现数字错位,安全输入软键盘,记录一下实现过程用于总结github地址: https://github.com/fushuangdage/CustomView实现<?xml version="1.0" encoding="utf-8"?><Keyboa

2017-08-22 18:56:38 3048

原创 一次集成使用Tinker热更新的体验

官方文档:https://github.com/Tencent/tinker 下面我们按照官方文档和这个里面的tinker-sample-android来进行集成Tinker。 注意 说明,官方demo的使用https://github.com/Tencent/tinker/wiki/Tinker-接入指南里面的使用步骤详解热加载简单的说 如果Android要加载一个类 就会调用ClassLoad

2017-08-08 18:43:58 2205

原创 低仿探探左右滑动选择控件

效果图 原谅我把妹子们换成了小机器人….实现思路利用自定义RecyclerView LayoutManager实现对item 的重新布局,只加载三个条目(可根据需求自定义),并将后面的两个按照比例缩放和位移,只不过三个的要倒序加载,否则最上面要展示的会addview,会被遮盖住实现代码LayoutManagerpackage com.example.admin.kotlin.tantan;impo

2017-07-21 17:10:43 2951

原创 为RecyclerView添加吸顶条目分组(ItemDecoration)

通过RecyclerView提供的ItemDecoration 实现不同组条目分隔开间距,并且在间距处绘制吸顶条目分组ItemDecoration类主要是三个方法:public void onDraw() 在Item内容绘制之前绘制,可以理解成为Item绘制背景public void onDrawOver() 在Item内容绘制之后绘制,在Item之上绘制,覆盖在内容上public voi

2017-07-08 12:44:54 1015

原创 Android常用整理

SharePreferance SharedPreferences sp = getSharedPreferences("app", MODE_PRIVATE); // 保存配置到 SharedPreferences SharedPreferences.Editor editor = sp.edit(); // 添加内容到存储区 edit

2016-11-30 22:27:38 363

原创 自动轮播图简单实现

通过网络请求json数据,根据数据创建图片和指示器指示器小圆点跟随ViewPager联动开启线程HandlerViewpager自动滚动当用户手指滑动时,禁用自动滚动运行效果:代码实现:xml文件 <FrameLayout android:layout_width="match_parent" android:layout_height="150dp">

2016-11-10 18:19:54 1365

原创 广播接收者BroadcastReceiver

广播接收者简介:广播接收者,Android 四大组件之一,用来接收Android 系统 或者是应用程序发送出来的各种广播信息的。广播:系统/应用程序 发生状态改变的时候,需要想系统中通知其他的应用程序,进行一些操作,这个信息就是广播。广播接收者:应用程序中,用于接收系统或者应用程序发送的消息的组件,当广播收到的时候,会自动的启动。广播的分类:有序、无序用法: <!-- 清单文件注册,

2016-09-21 21:25:17 302

原创 动态接口实现网络加载

1.要实现动态接口必须了解几个定义:注解: 定义注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。 元注解:负责描述注解的注解 1.@Target :标记注解用于描述什么,可以使方法,属性等等… 2.@R

2016-09-16 21:14:07 639

原创 Andriod常用Menu之一:ContextMenu

ContextMenu通过长摁某个View弹出的上下文菜单1. 创建android是通过长按某个视图元素来弹出上下文菜单的,通过setOnCreateContextMenuListener(this)来给一个控件设置上下文菜单事件,通常用于ListView和GrideView. 注意:给控件设置监听事件的时候传递this,并不需要像点击事件那样实现抽象方法,因为父类里本身就包含这个方法,只需要重写

2016-09-08 20:09:15 352

原创 Handler实现对一个网页的异步加载,并将过程封装

思路:1.利用异步访问http://www.tngou.net/api/top/show?id=13122,建立连接,下载字符串,返回给主线程. 2.利用gson对字符串解析,封装成为实体对象. 3.利用回调函数将实体对象的内容填充到控件中.实现:创建一个类DownHTMLRunnable,对获取数据的过程进行封装,并且传递一个Callback以便对获取的数据进行操作,为了通用化,接口内部的参数

2016-09-01 19:16:51 264

原创 利用穷举法解决01背包问题

01背包动态规划算法可能有很多人不理解,贴出一个利用递归穷举法解决01背包问题的代码package homework;import java.util.ArrayList;import java.util.List;import java.util.Scanner;/** * Created by fushuang on 2016/8/15. */public class bahe {

2016-08-23 10:55:23 5694 2

原创 Tcp文件上传

服务器端:package TCPUploadFile;import java.io.DataInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socket;

2016-08-23 10:50:03 215

原创 多人间UDP聊天小工具

利用UDP协议向指定的人发送数据包,并且启用另外一个线程用于接收数据包,完成多人聊天功能package UDPtest;import java.io.IOException;import java.net.*;import java.util.Scanner;/** * Created by fushuang on 2016/8/17. */public class UdpChatUt

2016-08-22 22:01:13 315

原创 JavaScript实现一个简单的贪吃蛇游戏

我就不简述了,基本都写在备注里了<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>canvas</title> <script type="application/javascript"> window.onload = function () {

2016-08-22 21:57:48 291

原创 父类子类相互转化的内存关系

package com.fushuang.test;/** * Created by fushuang on 2016/7/29. */class Animal{ public int size=10;}class Dog extends Animal{ public String color="red"; public void say(){ Syst

2016-08-22 21:55:23 1317

原创 数组排序:快速排序,选择排序,冒泡排序,插入排序

一下介绍四种数组的常用排序方式快速排序:时间复杂度最低,效率最高 package shuzu; import java.util.Arrays; import java.util.Random;/** * Created by fushuang on 2016/7/30. */ public class ArraySortsizhong { /* 有序

2016-08-22 21:53:10 346

原创 JAVA自己用简单代码构建节点模型

人生第三篇CSDN博客,好像没有之前那么激动了…./** * Created by fushuang on 2016/8/3. *//* 8 4 12 2 6 10 14 1 3 5 7 9 11

2016-08-22 21:38:57 717

原创 利用正则表达式解析简单XML

人生的第二篇CSDN博客,还是好激动啊~package homework;import java.util.ArrayList;import java.util.List;import java.util.Stack;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Created by Administ

2016-08-22 21:35:44 1010

原创 正则表达式的使用

哎呀呀第一次写博客,有点小激动啊~~,整理一下之前写过的代码吧用正则表达式实现了一个将阿拉伯数字转化为中文读法的功能.只支持到千万import java.io.*;/** * Created by Administrator on 2016/8/5. */public class MynumTrans { public static void main(String[] args) {

2016-08-22 21:17:57 192

空空如也

空空如也

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

TA关注的人

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