- 博客(42)
- 资源 (4)
- 收藏
- 关注

原创 这一定是最简单的自定义布局
说明上半部分下载按钮为主页面下半部分进度条和取消按钮为引用的自定义布局简介啥?自定义 View 和自定义布局不一样?没错,自定义 View 是画布局,重在画,从 0 到 1;自定义布局是组合控件,重在组合,将分散的多个控件组合成一个整体。所以意义上是不一样的,当然广义上都可以叫自定义 View,毕竟殊途同归
2017-12-20 10:42:10
2054

原创 这一定是最简单的MVP+Retrofit
说明:不讲原理,不讲优化,就是干目标:学会如何搭建最最基本的mvp架构简介我承认画图不是我的强项MVP是MVC衍生出来的架构,现在也比较成熟了,用的人也多了,面试也会考了,所以你必须要知道了M:数据层(数据库,文件,网络等)V:UI层(Activity,Fragmen
2017-12-09 17:00:02
361

原创 (最新android studio 2.2.2)如何在已有工程下新建一个module
最新as新建module方法,步骤如下:1.File->New->New Modul2.选择第一个Phone&Tablet Modul(无特殊情况下选这个),然后点击Next3.第一个是应用的名字(在桌面用户看到的名字,可以为中文),第二个是在android studio目录下显示的名字,写好后点击Next4.这一步是要你选择第一个创建的默认的a
2016-12-01 16:49:31
797

转载 android之socket编程实例
注意点:注册访问的网络权限;android中UI线程不能有访问网络的操作,否则会报android.os.NetworkOnMainThreadException的异常[html] view plain copy uses-permission android:name="android.permission.INTERNET"
2016-09-22 18:40:54
573

转载 Android开发:Handler异步通信机制全面解析(包含Looper、Message Queue)
前言最近刚好在做关于异步通信的需求,那么,今天我们来讲解下Android开发中的Handler异步通信传递机制(包括Looper、Message Queue)目录Handler.png定义Android提供的一套消息传递机制作用用于实现子线程对UI线程的更新,实现异步消息的处理:在新启动的线程中发送消息在主线程中获取并处理信息为什么要
2016-09-22 18:37:03
701

转载 美团多渠道打包方案初体验
美团多渠道打包以快出名,早有耳闻,但总觉得神龙见首不见尾,大多文章都是讲原理的东西,却始终难懂到底怎么样用,今天就以初学者的姿态一边探索,一边总结,也希望能帮住大家少走写冤枉路。首先,明白几个问题:1、为什么要进行多渠道打包?安卓应用商店(一个商店也叫做一个渠道,如360,baidu,xiaomi)众多,大大小小几百个,我们发布应用之后需要统计各个渠道的用户下载量,所以才有了多渠道打包
2016-09-13 14:56:14
379

转载 重置cmd,恢复初始状态
最近在网上看到很多网友想了解cmd(DOS)恢复默认设置的方法,进过本人的实践,得出以下结论:(仅供参考) cmd(DOS)是嵌在windows操作系统内的一个子系统,因此也会受到windows操作系统的管理大家可能都知道,windows管理自身内的应用软件时,会将应用软件的相关信息用注册表来储存,当然,cmd也不例外 那么,我们就可以通过删除关于cmd修改设置的
2016-09-12 17:57:49
44282
12

转载 IntelliJ/android studio创建main函数快捷
http://blog.youkuaiyun.com/tiantiandjava/article/details/42269173 今天偶然发现了IntelliJ中 创建main函数的快捷键,依次还有for循环,System.out.println();在编写代码的时候直接输入psv就会看到一个psvm的提示,此时点击tab键一个main方法就写好了。psvm 也就是publi
2016-09-07 11:33:39
5845
9

转载 go中方法的接收者是值或者指针有什么区别吗?
参考文章:http://studygolang.com/articles/1113希望解决的问题如下假设有两个方法,一个方法的接收者是指针类型,一个方法的接收者是值类型,那么:对于值类型的变量和指针类型的变量,这两个方法有什么区别?如果这两个方法是为了实现一个接口,那么这两个方法都可以调用吗?如果方法是嵌入到其他结构体中的,那么上面两种情况又是怎样的?值类型的变
2016-09-06 18:50:14
1807

转载 Go 语言简介(上)— 语法
Hello World文件名 hello.go1234567packagemain //声明本文件的package名 import"fmt" //import语言的fmt库——用于输出 func main() { fmt.
2016-09-06 16:27:58
477

转载 Android事件分发机制完全解析,带你从源码的角度彻底理解(上)
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/9097463其实我一直准备写一篇关于Android事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了Android事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListVie
2016-09-01 16:46:22
345
3
原创 (最新android studio 2.2.2)如何在已有工程下新建一个module
这是最新版本as新建module的方法,简单实用。步骤如下:1.File->New->New Modul2.选择第一个Phone&Tablet Modul(无特殊情况下选这个),然后点击Next3.第一个是应用的名字(在桌面用户看到的名字,可以为中文),第二个是在android studio目录下显示的名字,写好后点击Next4.
2016-12-01 16:45:43
3013
原创 Android性能优化之Listview(ViewHolder重用机制)
好久没发博客了,因为发博客太耗时间了,而且参考的比较多,也不想一直带着转载两个字。都一直放在笔记里。不过只能自己看不能和大家分享了,看到这篇文章令我恍然大悟,很有帮助,所以还是决定写下来。相信大家在很多时候都会用到ListView这个控件,因为确实是用的很多很多,但是有木有遇到过当数据很多很多的时候,往下滑ListView时有时候会卡顿,这就需要我们来优化它了。 ListV
2016-11-10 16:10:29
441
转载 Android程序的“现场保护”
学习操作系统时,我们知道CUP处理事务的时候有个中断机制,以便进行事务的切换,中断处理的过程: 1)唤醒被阻塞的驱动(程序)进程;2)保护被中断的CPU环境;3)转入响应的设备处理程序;4)中断处理;5)恢复被中断的进程。 在Android当中也有类似的概念,在activity的生命周期中 ,当处于onPause() ,onStop() ,onDestroy() 三种状
2016-09-18 10:13:59
577
转载 Android Studio打开错误代码快速修复提示
在Eclipse中,如果代码有错误,会有红色X图标提示;点击该图标时,会给出修复这个错误的提示。Android Studio也提供相同的功能,可以查看到错误的描述,也可以查看修复错误的提示。本经验以示例方式,介绍Android Studio的快速代码错误修复功能的使用。工具/原料Android StudioEclips
2016-09-13 18:16:11
3306
转载 【Android Studio快捷键】之导入相应包声明(import packages)
可能import 单个声明的快捷键大家都很容易找到,Alt+Enter。但是如果我要一次性import文件中所有的声明,这个快捷键是什么呢,找啊找的,就是没找到,以前在Eclipse是Ctrl+1,但是做完Keymap后不起作用了。其实我也没找到,我估计是没有这个快捷键了,当然如果真有这个快捷键,找到了,我会更新下。为什么我猜是没有这个快捷键了呢,因为Android Studio的设置里面有一项A
2016-09-13 18:14:30
727
转载 Redis学习手册(List数据类型)
一、概述: 在Redis中,List类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素。在插入时,如果该键并不存在,Redis将为该键创建一个新的链表。与此相反,如果链表中所有的元素均被移除,那么该键也将会被从数据库中删除。List中可以包含的最大元素数量是4294967295。 从元素插入和
2016-09-12 18:48:05
334
转载 Android Fragment 你应该知道的一切
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/42628537,本文出自:【张鸿洋的博客】很久以前写过两篇Fragment的介绍,主要就是介绍其功能:Android Fragment 真正的完全解析(上)和Android Fragment 真正的完全解析(下) 有兴趣的可以凑合看下。之前的博客属于怎么使用Frag
2016-09-07 15:49:52
289
转载 Android Fragment 真正的完全解析(下)
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/37992017上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上)。本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity
2016-09-07 15:47:51
341
转载 Android Fragment 真正的完全解析(上)
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/37970961自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,
2016-09-07 15:40:15
237
转载 android 常用的intent action整理
Intent主要有以下四个重要属性,它们分别为:Action:Action属性的值为一个字符串,它代表了系统中已经定义了一系列常用的动作。通过setAction()方法或在清单文件AndroidManifest.xml中设置。标识Activity为一个程序开始的示例代码(AndroidManifest.xml进行配置)如下:
2016-09-07 15:38:11
520
转载 android webview用法小结1
原文链接:http://blog.youkuaiyun.com/ethan_xue/article/details/7841431将webview里常用的东西拿出来分享下想要webview加载页面,只需webView.loadUrl("http://m.baidu.com");当然别忘了添加网络权限此时点击网页里的超链接,会弹出多个浏览器选择,但是我们想要在自己的浏览器打开,就
2016-09-07 15:33:34
316
转载 Android中的onActivityResult和setResult方法的使用
如果你想在Activity中得到新打开Activity关闭后返回的数据,你需要使用系统提供的startActivityForResult(Intent intent,int requestCode)方法打开新的Activity,新的Activity关闭后会向前面的Activity传回数据,为了得到传回的数据,你必须在前面的Activity中重写onActivityResult(int re
2016-09-07 15:31:47
826
转载 android 自定义控件 自定义属性详细介绍
自定义控件在android中无处不见,自定义控件给了我们很大的方便。比如说,一个视图为imageview ,imagebutton ,textview 等诸多控件的组合,用的地方有很多,我们不可能每次都来写3个的组合,既浪费时间,效率又低。在这种情况下,我们就可以自定义一个view来替换他们,不仅提升了效率并且在xml中运用也是相当的美观。 一、控件自定义属性介绍 以下示例中代码均在val
2016-09-07 15:29:05
226
转载 如何搭建一个独立博客——简明Github Pages与Hexo教程
摘要:这是一篇很详尽的独立博客搭建教程,里面介绍了域名注册、DNS设置、github和Hexo设置等过程,这是我写得最长的一篇教程。我想将我搭建独立博客的过程在一篇文章中尽可能详细地写出来,希望能给后来者一个明确的指引,同时用这篇教程开篇,正式开始我的第八大洲之旅。前言作为一个技术小白,没有技术基础,看网上的教程也云里雾里,看程序员的教程相当不容易,稍微有些细节描述得不清楚自己就要绕弯路去
2016-09-07 15:27:11
544
转载 关于新版ADT创建项目时出现appcompat_v7的问题
做Android开发的朋友最近会发现,更新ADT至22.6.0版本之后,创建新的安装项目,会出现appcompat_v7的内容。并且是创建一个新的内容就会出现。这到底是怎么回事呢?原来appcompat_v7是Google自己的一个兼容包,就是一个支持库,能让2.1以上全使用上4.0版本的界面。下面就让笔者带你慢慢走近这个问题并解决它。工具/原料
2016-09-07 15:23:12
332
转载 Android UI系列-----ScrollView和HorizontalScrollView
本篇随笔将讲解一下Android当中比较常用的两个布局容器--ScrollView和HorizontalScrollView,从字面意义上来看也是非常的简单的,ScrollView就是一个可以滚动的View,这个滚动的方向是垂直方向的,而HorizontalScrollView则是一个水平方向的可以滚动的View。本篇随笔可能描述性的知识比较少,最主要还是通过代码来看看如何使用这两个View。
2016-09-07 15:21:01
411
转载 new Runnable() {} 可以这样用吗?
匿名内部类(Anonymous Inner Class),在创建实例的同时给出类的定义,所有这些在一个表达式中完成。Java code?1234Runnable rn = new Runnable() { public void run() { }};
2016-09-01 18:54:43
1434
转载 ProgressDialog使用总结
ProgressDialog的使用 ProgressDialog 继承自AlertDialog,AlertDialog继承自Dialog,实现DialogInterface接口。ProgressDialog的创建方式有两种,一种是new Dialog ,一种是调用Dialog的静态方法Dialog.show()。 [java] view p
2016-09-01 18:52:55
219
转载 Android LayoutInflater详解
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。具体作用:1、对于一个没有被载入或者想要动态载入的界面,都需要使用Layou
2016-09-01 18:48:37
202
转载 android Spinner控件详解
Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值。上图显示的是Spinner常见的样式。这篇文章中我将讨论1.Spinner的基本用法 2.设置Spinner的Adapter (arrayadapter 和自定义BaseAdap
2016-09-01 18:44:35
590
原创 Android开发中的View类的视图属性focusableInTouchMode这个属性跟focusable有什么区别?
要理解这个属性,首先你得知道,Android不是只面向手机的,它还有可能被安装在电视等非触摸输入设备上.即使是在手机上,目前很多手机也都支持键盘输入了.focusable这种属性,更多的是为了解决非触摸输入的,因为你用遥控器或键盘点击控件,就必然要涉及到焦点的问题,只有可以获得焦点的控件才能响应键盘或者遥控器或者轨迹球的确定事件.然后再反过来看focusableInTouchMode.
2016-09-01 18:41:38
624
原创 设置TextView字体大小
使用如下代码时,发现字号不会变大,反而会变小:size = (int) mText.getTextSize() + 1;mText.setTextSize(size);后来发现getTextSize返回值是以像素(px)为单位的,而setTextSize()是以sp为单位的,两者单位不一致才造成这样的结果。这里可以用setTextSize()的另外一种形式,可以指定单位:setText
2016-09-01 18:33:57
1812
转载 Android Context 上下文 你必须知道的一切
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/40481055,本文出自:【张鸿洋的博客】本文大多数内容翻译自:http://www.doubleencore.com/2013/06/context/ 我重新组织了下内容以及结构,建议大家尽可能看下原文。1、Context概念其实一直想写一篇
2016-09-01 18:20:39
248
转载 Java Observable 模式
一、Observer模式的意图: 在对象的内部状态发生变化时,自动通知外部对象进行响应。 二、Observer模式的构成: ·被观察者:内部状态有可能被改变,而且又需要通知外部的对象 ·观察者:需要对内部状态的改变做出响应的对象 三、Observ
2016-09-01 18:17:55
275
原创 当导入Android项目时出现红叉解决方案
1、sdk的路径配置有问题,这时候无法找到adt工具;遇到这个问题,菜单preference->android修改SDK的路劲。2、可能是和以前的SDK版本兼容的问题(以前的SDK可能与当前eclipse配置的SDK版本不同而无法生成资源文件);遇到这个问题首先清空一下工程,然后在build一次。具体步骤就是菜单Project->clean, Project->build.3、问题2,通过以上
2016-09-01 18:12:47
728
转载 安卓模拟器Genymotion安装使用教程详解
大家知道,随着google被墙,安装安卓虚拟机真的是非常困难,你可能试过离线下载和在线下载,但是都是比较困难。Genymotion工具就是提供了Android虚拟环境,能够让我们快速安装和使用,同时在Eclipse中安装插件也可以让自己开发的程序运行在Genymotion的Android虚拟机。工具/原料GenymotionWindo
2016-09-01 17:59:03
684
转载 java中字节流和字符流的区别
流分类:1.Java的字节流 InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先。2.Java的字符流 Reader是所有读取字符串输入流的祖先,而writer是所有输出字符串的祖先。 InputStream,OutputStream,Reader,writer都是抽象类。所以不能直接new 计算机上所有文件的储存
2016-09-01 17:50:26
423
原创 使用static静态内部类注意事项
在一个类中创建另外一个类,叫做成员内部类。这个成员内部类可以静态的(利用static关键字修饰),也可以是非静态的。由于静态的内部类在定义、使用的时候会有种种的限制。所以在实际工作中用到的并不多。 在开发过程中,内部类中使用的最多的还是非静态地成员内部类。不过在特定的情况下,静态内部类也能够发挥其独特的作用。 一、静态内部类的使用目的。 在定义内部类的时候,可以
2016-09-01 17:33:11
885
转载 Eclipse ADT 进行android应用签名打包详解
1.Eclipse工程中右键工程,弹出选项中选择 android工具-生成签名应用包:2.选择需要打包的android项目工程: 3.如果已有私钥文件,选择私钥文件输入密码,如果没有参见第6和7步创建私钥文件:4.输入私钥别名和密码:5.选择APK存储的位置,并完成设置 开始生成: 6.没有私钥文件的情况,创建私钥文件
2016-09-01 17:24:37
365
Proguard混淆Android/Java源代码
2016-11-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人