自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (12)
  • 收藏
  • 关注

原创 TCP重传与确认机制

TCP片段重传计时器以及重传队列:TCP按照以下特定顺序工作:1.放置于重传队列中,计时器开始 包含数据的片段一经发送,片段的一份复制就放在名为重传队列的数据结构中,此时启动重传计时器。因此,在某些时间点,每一个片段都会放在队列里。队列按照重传计时器的剩余时间来排列,因此TCP软件可追踪那几个计时器在最短时间内超时。2.确认处理 如果在计时器超时之前收到了确认信息,则该片段从重传队列中移除。3.重传

2016-07-27 16:07:48 10669

原创 TCP滑动窗口

假设A和B之间新建立了一条TCP连接。设备A需要传送一长串数据流,但设备B无法一次全部接收,所以它限制设备A每次发送分段指定数量的字节数,直到分段中已发送的字节数得到确认。之后,设备A可以继续发送更多字节。每一个设备都对发送,接收及确认数据进行追踪。TCPbuffer中数据可以分为以下四类1.已发送已确认 数据流中最早的字节已经发送并得到确认。这些数据是站在发送设备的角度来看的。如下图所示,31个字

2016-07-27 15:54:33 441

原创 ICMP,ARP

ICMP是网络控制消息协议,主要用于传递查询报文与差错报文。ARP是地址解析协议,它的作用是在以太网环境下,通过第3层的IP地址来找寻第2层的MAC地址,得到一张ARP缓存表。转发数据的时候根据ARP缓存表来进行传输ICMP:Internet操作是由路由器严密监控的,当路由器端处理报文时有意外发生,路由器这时会根据相应情况发送ICMP报文给对应的发送端来告知发生了什么。ICMP消息的报文封装在IP

2016-07-27 13:28:39 656

原创 IP地址与子网掩码

IP地址:A类IP地址是首位以“0”开头的地址,从第1位到第8位是它的网络标识.(0.0.0.0~127.0.0.0)一个网段容纳主机数16777214个 B类IP地址是首位以”10”开头的地址,从第1位到第16位是它的网络标识.(128.0.0.0~191.255.0.0)一个网段容纳主机数65534个 C类IP地址是首位以”110”开头的地址,从第1位到第24位是它的网络标识.(192.0.

2016-07-26 21:53:20 563

原创 路由选择

以太网交换机工作在第二层即数据链路层,用于在同一网络内部转发以太网帧。但是,当源和目的IP地址位于不同网络时,以太网帧必须发送给路由器。路由器负责在不同网络间传输报文,通过路由表来决定最佳转发路径。当主机将报文发送至不同IP地址时,由于主机无法直接与本地网络以外的设备通信,报文被转发至默认网关。默认网关就是本地网络路由器接口的ip地址。它通常用来连接本地网与公共网。报文转发过程路由器在一个接口接收

2016-07-26 21:03:31 606

原创 交换机学习笔记

交换机作用:是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备。交换机可以“学习”MAC地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址。LAN交换机维护一张表,通过这张表决定如何转发数据流。LAN交换机唯一智能部分是利用这张表基于消息的进入端口和目的地址来转发。交换机内部MAC地址表的动态更新1.帧进去交换机时,交换

2016-07-26 18:48:00 3738

原创 Android学习笔记-Activity窗口的创建过程

Window表示一个窗口的概念,android中所有的视图都是通过Window来呈现的,Activity,Dialog,Toast他们的视图都是附加到Window上的。这篇博客讨论的是Activity中的视图如何附加到window上的,其实也就是为什么activity中设置的布局我们能够在手机屏幕上可以看到。我们都知道当Activty对象创建成功之后会回调onCreate()方法,而当onResu

2016-04-27 12:29:32 1717

原创 Android学习笔记-MeasureSpec的理解

MeasureSpec字面意思为测量的规格,他决定了view的测量过程接下来探讨几个问题来学习MeauseSpec 1. MeasureSpec的构成 2. 如何创建MeasureSpec 3. 默认View的OnMeasure过程中对MeasureSpec的处理一.MeasureSpec的构成MeasureSpec代表一个32位的int值,前俩位代表SpecMode,后30位代表SpecS

2016-04-26 22:11:02 6449 2

原创 判断是否是同一天

/获得保存的天数,如果没有记录就赋值为-1表示第一次执行 int day = sp.getInt("shareSinaDay", -1); int curDay = Calendar.getInstance().get(Calendar.DAY_OF_YEAR); if ((day == -1 || day != curDay)) { /* * -1表明是第一次执

2016-02-07 13:04:09 1018

原创 对文件进行操作

File source = new File(“D:/temp1.txt”); File distination = new File(“D:/temp2.txt”); try { FileInputStream fis = new FileInputStream(source); BufferedReader

2016-01-24 16:27:42 498

原创 Android学习笔记-eclipse导入support-v7包出错

1.将support-v7的编译版本提高的5.0获取6.02.当有其他项目引用到这个包时,需在同一个目录下,不然导入v7库会不成功

2016-01-18 02:50:48 579

原创 Android学习笔记-使用Scroller来滚动视图

Scroller滚动视图可以实现平滑移动的效果,而不是瞬间完成的移动,接下里我们实现一个view可随手指移动而移动,当放开手指的时候回到原位置,使用Scroller需要三步,接下来一一介绍scrollBy与scrollTo都是移动的是ViewGroup的内容,当在view中调用时移动的是View的内容,如TextView移动的为文字1.初始化Scroller通过他的构造函数来初始化Scroller

2016-01-17 17:59:15 544

原创 Android学习笔记-使用layout方法使View随手指的滑动而滑动

看AndroidHero 这本书时,有一个例子是关于移动View使用view的layout方法来移动,对于触摸事件的处理在这里记录一下1.思路在View的onTouchEvent方法中对MotionEvent中的坐标进行记录,记录按下的时候记录,在移动的时候计算他们的偏移量,调用layout()对view的位置进行重绘制2.对坐标的处理1.可以通过event.getX()来获取相对父View的坐

2016-01-17 15:34:25 1673

原创 Android学习笔记-实现toolBar跟随ListView滑动显示与隐藏

经常可以看到以下app应用它的toolBar是可以滑出屏幕的,这样的体验效果非常好,看一下效果1.实现原理:默认的ActionBar是不可以移动的,不过可以使用google的support的v7包下的ToolBar来代替,ToolBar将会渐渐取代ActionBar,当ListView在滑动的过程中时去监听触摸的事件,当向上滑动时将toolBar偏移出屏幕,向下滑在将ToolBar滑下来,接下来看

2016-01-16 17:36:43 3850 3

原创 Android 小知识点记录

1.使用fragment在使用fragment中时,setUserVisible()方法先与onCreateView方法,并且当刚开始启动Viewpager时就会调用各个fragment的setUserVisible方法,当设置viewPager.setOffScreenLimit为fragment的总数时,则会在启动时即调用各个fragment页面得onCreateView方法2.使用Scroll

2016-01-15 16:28:47 466

原创 Android学习笔记-在5.0之前的系统使用Metail Design 的设计风格

在android 5.0 发布的时候google推出了Metail Design的设计风格,简要的意思是使应用中的界面和动画如现实一样更加真实下面附上一下应用的效果图: 1.下载相应的support Librarygoogle提供一下支持低版本使用Metail Design的兼容库:com.android.support:appcompat-v7:23.1.1这个是最新版本,可以在SDK Man

2016-01-12 18:07:43 1024

原创 使用adapter的notifyDataSetChanged时列表数据没有刷新

纪录一下之前犯得一个错误,在使用viewPager时,在setUserVisible()方法中加载数据,成功之后发现使用adapter的notifyDataSetChanged时,列表还是没有数据,在滑动viewPager俩页之后时才发现列表中有了数据。notifyDataSetChanged方法是通过反射查看view中使用的数据是否发生了改变,发生了改变,则进行重绘图形 public View

2016-01-10 22:07:21 13834

原创 java学习笔记-equals

在java中比较俩个类的实例是否相等不是使用”=”,而是使用equals,类默认是继承Object类中的equals方法,所以我们得重新定义equals方法public class Point { public final int x; public final int y; public Point(int x, int y) { this.x = x;

2015-12-21 17:09:17 403

原创 java学习笔记-自动装箱,自动拆箱

java中存在基本类型int,double,boolean等基本类型,而有些时候,我们希望他们以类的形式存在,比方说在使用集合的时候,collection存放整数时,就需要Integer类型,而不是int类型。最基本的做法是通过Integer i = new Integer(100);也可以通过:Integer i = Integer.vlaueOf(100);JDK5之后加入了自动装箱的语法,所

2015-12-21 00:10:57 413

原创 java学习笔记-泛型

>当你持有一组组件时,可以使用collction来存储 比如:List list = new ArrayList();list.add("xinwa1");list.add("xinwa2");String str = (String) list.get(0);这时候编译器会出现异常,告诉我们:Type safety: The method add(Object) belongs to th

2015-12-20 18:26:51 410

原创 java学习笔记-foreach与iterator

java SE 5 之后引入了foreach语法,可以用于对数组,已经实现iterable接口的集合中元素的遍历java的foreach语法,是编译器帮助你自动转化为对应的程序语句。如果为数组则为:public void go(int ai[]) { int ai1[] = ai; int i = ai1.length; for(int j = 0; j < i; j++)

2015-12-20 17:42:35 1355

原创 java学习笔记-String,构造器

字符串String str = new String("java");上面这行代码可以用下面来表示String str1 = "java";Stirng str2 = new String(str2);String 还有一个intern()方法,可以让你把字符串放入字符串常量池中,或者是从字符串常量池中取出JVM中常量池中所维护字符串,如果调用此方法,则会使用equals方法,比较字符串池中有无相

2015-12-20 16:54:59 1115

原创 java学习笔记-理解java语言的跨平台

java程序程序可以跨平台,这是可以在很多书上都描述过的,了解跨平台之前,得先了解一下不能跨平台是怎么回事。对于电脑来说,他只认识一种语言,也就是0101的二进制等序列所组成的指令。对于c/c++程序,我们通常需要通过编译器将源程序编译为0101序列,但是不 同的操作系统上面他的二进制所组成的指令是不同的,如果我们把windows下编译好的文件放在linux上运行,由于指令不同而导致执行错误或者

2015-12-17 12:44:47 508

原创 java读书笔记-java提高篇(2)

原文:链接1.equals 总结在java规范中,它对equals方法的使用必须遵循如下几个规则equals 方法在非空对象引用上实现相等关系1、自反性:对于任何非空引用值 x,x.equals(x) 都应返回 true。2、对称性:对于任何非空引用值 x 和 y,当且仅当 y.equals(x) 返回 true 时,x.equals(y) 才应返回 true。3、传递性:对于任何非空引用值 x、y

2015-12-14 12:52:38 239

原创 java读书笔记-java提交篇(1)

通过学习 极客学院wikejava提高篇,记录一些比较重要的东西。1. ISP(Interface Segregation Principle)isp:使用多个专门的接口比使用单一的总接口要好。一个类对另外一个类的依赖性应当是建立在最小的接口上的,没有关系的接口合并在一起,形成一个臃肿的大街口,这是对角色和接口的污染。2. 使用序列化实现对象的拷贝public class Person imple

2015-12-14 11:38:10 343

原创 Android学习笔记-View的位置参数以及手势的监听

View的位置参数这个在平常经常会用到,一些比较炫的动画,还有效果,都是改变View的位置来进行的。在有一个是手势的监听,监听手指在屏幕上的滚动,快速滑动等。View的位置参数1.view的位置主要由它的四个顶点来决定的,分别对应于view的四个属性,left,top,right,bottom.left:为view左上角的横坐标top:为view左上角纵坐标right为view右下角的横坐标

2015-12-11 14:19:14 3392

原创 Android学习笔记-自定义视图之比例图

前一段时间看一个学习效率的问题,发现自己的学习效率的确不高,写博客主要是为了加深映像,然后的在写的时候希望能够进一步能够理解。给大家看一张图图片里面有一项:教授给他人 学习内容的留存率最大为90%1.首先看下效果图,效果很简单2. 实现思路这个控件是由三部分组成的,分别是中间的文字,包括文字的圆圈,在加上最外层的圆环就可以了。3.看一下自定义的Viewpublic class SweepView

2015-12-09 15:11:45 588

原创 android学习笔记-模仿音乐音频频率

看书的时候,看到了一个模仿音乐音频条的例子,就敲了一下,效果还可以。先看下效果1. 实现思路自定义一个视图,然后在onDraw()方法中绘制几个长方形的条,让长方形的长条随机变化,然后重复绘制,就有了这样的效果。2. 自定义Viewpublic class MusicLinearClip extends View {private int mWidth;private int mHeight;

2015-12-09 13:35:58 1476

原创 android学习笔记-接口回调简析

以前怎么也不能够理解android中的回调事件,比方说点击事件的实现为什么要通过: btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generat

2015-12-07 20:44:26 418

原创 android学习笔记-自定义View的属性

在平时我们自定义view视图的时候,有时候需要根据不同的属性来改变我们布局,这样就相当做成一个像系统控件那样的模板一样,可以重复使用,就需要通过自定义属性来实现。接下来我们通过一个实例来说明。这个例子其实是做了一个模仿actionbar的一个模板,可以动态修改这个模板的布局,左右边的按钮都可以选择隐藏,也可以修改上面的文字的大小与背景接下来开始实现1.定义属性为一个view提供一个可自定义的属性只

2015-12-07 19:47:05 560

原创 android学习笔记:Intent,Intent Filter

Intent的作用 Intent在android中可以用来请求一个动作,用于启动另外一个控件,Intent可以启动三种控件如下启动一个activity,可以使用startActivity(),如果你想启动activity之后返回结果,那么启动的时候调用startActivityForResult(),然后当前的activity实现onActivityResult(),当被启动的activity结

2015-12-02 01:59:04 404

原创 android学习笔记:layer-list

使用layer-list可以将多个drawable按照顺序叠在一起显示,这样就可产生层次<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"><!-- 灰色阴影 --><item android:left="2dp"

2015-11-30 11:12:56 496

原创 android学习笔记,样式的开发-selector

在实际应用中,很多地方比如按钮,tab,listItem 等都是有不同状态有不同的形状,就需要用到selector(选择器)了。selector标签 selector 标签,可以添加一个或多个字item标签,而相应的状态是在item标签下定义的,定义的xml可以作为俩种资源使用,drawable和color,。作为drawable资源使用时,一般和shape一样放于drawable目录下,it

2015-11-30 10:55:41 527

原创 mysql 存储长文本

在写项目时,需要把文章中的图文存储到mysql中数据库中,查了一下>可以使用TEXT,BLOB俩种类型来存储长文本。1. TEXTTEXT有4有类型:TINYTEXT 256bytesTEXT 64kb MEDIUMTEXT 16MbLONGTEXT 4GB使用注解@Lob@Basic(fetch=FetchType.LAZY)@Colu

2015-11-29 20:36:16 73452

原创 markdown 练习

这是标题这是标题1.标题 1. ##2.引言 这是引言,就是引导大家的话题 还可以多行,写作是一种乐趣了,哈哈 这时二级引用 回到一级1. y有序列表,无序列表1.无序列表使用星号,加号或是减号作为列表标记 * red * green * bluegreenredblue2.有序列表使用数字接一个英文句点redbluegr

2015-11-27 17:16:04 628

原创 android 自定义drawable图形(oval,ring,rectangle)

有时候我们会需要自定义drawable,用来当一些文字的背景图片,使用方式为在drawable文件夹下新建xml文件1.自定义drawable中的图形可以为oval(椭圆),ring(圆环),rectangle(长方形),line(线段)2.首先我们看下rectangle        <shape xmlns:android="http://schemas.an

2015-11-13 12:25:26 7090

原创 当PullToRefreshScrollView里面嵌套ListView,下拉刷新时ListView主动向上滑

当PullToRefreshScrollView里面嵌套ListView,ListView上面还是有内容的,当下拉刷新的 时候,数据填充完成之后ListView就会往上面滑动,导致ListView上面的数据没法显示,这个时候,我们能够设置ListView上面的控件获取焦点,就能够屏蔽掉ListView自己主动上滑的现象。title_tv.requestFocus();title_tv.

2015-11-05 12:15:44 102382

原创 java在dos下编译

一:文件1:路径 E:\a\Student.javapublic class Student{ public static void main(String[] args){ System.out.println("我是Student"); }}文件2:在路径E:Test.javapublic class Test{ public static void main(

2015-09-08 14:49:01 557

原创 java 复合优于重用

最近在看Effective Java这本书,发现自己的水平水平差到家了,其中很多的java语法都搞错了,比如:子类重写了父类的add()与addAll()方法, 父类中的addAll()方法中又调用了add()方法,这时如果我们在子类总的addAll方法中调用super.addAll()方法时,由于其中addAll()方法中调用 add()方法,但是子类中重写了add()方法,所有这时调用的是

2015-08-12 11:29:17 1444

原创 popupWindow点击外面消失

1.View view = inflater.inflate(R.layout.popwindowdemo, null); final PopupWindow pop = new PopupWindow(view, 600, 800); pop.setBackgroundDrawable(new BitmapDrawable()); pop.setFocusable(tru

2015-08-08 21:06:16 517

libmodpdfium.so

libmodpdfium.so

2016-07-21

libjniPdfium.so

libjniPdfium.so

2016-07-21

ActionBar随listView的滚动而隐藏于显示

经常可以看到以下app应用它的toolBar是可以滑出屏幕的,这样的体验效果非常好,看一下效果

2016-01-16

android 手势监听

View的位置参数这个在平常经常会用到,一些比较炫的动画,还有效果,都是改变View的位置来进行的。在有一个是手势的监听,监听手指在屏幕上的滚动,快速滑动等。

2015-12-11

android自定义视图 比例图

这个控件是由三部分组成的,分别是中间的文字,包括文字的圆圈,在加上最外层的圆环就可以了

2015-12-09

android 音频条简单模仿

看书的时候,看到了一个模仿音乐音频条的例子,就敲了一下,效果还可以。先看下效果

2015-12-09

android 自定义view-styleable 的使用

在平时我们自定义view视图的时候,有时候需要根据不同的属性来改变我们布局,这样就相当做成一个像系统控件那样的模板一样,可以重复使用,就需要通过自定义属性来实现。

2015-12-07

Android 简单sd卡浏览器

Android 简单sd卡浏览器,比较完整的文件浏览器

2015-08-03

绘图实例 椭圆 圆弧

1.前几天看别人博客上的一个自定义视图时,看到了一个空心圆环,然后学习了下,把自己理解的 函数参数的

2015-06-18

android仿首页轮播效果图片

android仿首页轮播效果图片 我们经常打开一个App会看到有广告图片轮播的效果,

2015-05-07

Android 仿ios 可滑动切换效果按钮 实例代码

我们经常可以在ios上看到许多炫彩华丽的可拖动切换的Switch 按钮,前几天看了一篇博客写的是仿蘑菇街可滑动切 换的按钮,然后就按着那篇博客作者的思路亲自试验了一次,然后查阅了相关的资料,在这里跟大家分享一下心得, 本文主要说一下具体实现的过程与思路,以及一些重要函数的意思,图像是如何移动的,并附上自己的Demo,给像 我一样的新手一些参考。

2015-03-11

Android 仿今日头条 可拖动的GridView 代码实例详解

Android 仿今日头条 可拖动的GridView 代码实例详解

2015-03-07

空空如也

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

TA关注的人

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