- 博客(13)
- 资源 (21)
- 收藏
- 关注
原创 HashMap之TreeNode
HashMap之TreeNode在分析HashMap之前先说一下内部类TreeNode。TreeNode类是一颗红黑树的各种操作。先看一下类的继承关系 Entry是一个接口,主要有一些让子类去实现的get、set方法 Node是一个单向链表 最后就是TreeNode红黑树了先看一下简单的Node单向链表,然后再看复杂一点的TreeNodestatic class Node&l...
2020-05-26 17:15:49 616 1
原创 输入文本匹配内容AutoCompleteTextView的使用
简单使用AutoCompleteTextView是当用户输入一个字的时候,该控件会自动搜索与输入内容匹配的内容,并以列表项呈现。AutoCompleteTextView的实现是,继承EditText,当输入文本时弹出一个ListPopupWindow。xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http
2016-09-24 12:45:12 1074
原创 android上传图片压缩图片大小
现在手机拍照都是好几兆,直接把原图上传到服务器,对于用户来说,直接就崩溃了,在有WiFi的情况下还好。但当其他用户查看列表时,看一会估计手机都得欠费了。所以在上传图片的时候,要对图片进行压缩。 注意:这里的压缩是指质量压缩,不是尺寸压缩。比如当我们拍一张照片,要上传到服务器。我们需要先把这个照片,读到内存中,然后进行压缩,最后把压缩后的文件输出。关于图片的内存了,怎么加载节省内存了,这里就不说了
2016-06-05 20:00:30 777
原创 Android录音、WAV、AMR
简单介绍Android提供了两个API用于实现录音功能:android.media.AudioRecord、android.media.MediaRecorder。AudioRecord录音主要是实现边录边播(AudioRecord+AudioTrack)以及对音频的实时处理(如会说话的汤姆猫、语音)。 所以就用这个录WAV文件。这样录的文件是未经过压缩的所以,文件必要大,但是听起来也比较清晰,也
2016-06-04 19:14:27 8485 12
原创 Android水波纹扩散效果
先上图囧!没有图片所以就拿了小安代替了先看一下如何使用这个View<jianpan.com.mybutton.view.RippleDiffuse android:layout_width="200dp" android:layout_height="200dp" app:btn_img_res="@drawable/rd" app:ripple_img_res="@
2016-05-22 17:12:34 1859
原创 Toobar样式
使用Toolbar,要把原本的 ActionBar 隐藏起来。<style name="AppTheme" parent="AppTheme.Base"/><style name="AppTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="windowActionBar">false</item>
2016-05-08 17:55:30 402
原创 LoaderManager
1、好处个人觉得就是用起来方便,之前在查询数据的时候还得创建一个子线程,因为数据量过大的话可能导致程序ANR,但Loader内部直接创建了一个AsyncTask来解决这个问题。再就是当原始数据改变时,会收到通知,这个功能很强大。比如我们用一个ListView显示所有联系人,然后现在不退出应用,去通讯录添加一个联系人,在回来时界面就会自动改变。为什么会这么神奇,一会就知道了。2、如何使用比如我们获取一
2016-04-26 21:00:17 441
原创 Android布局优化
<include>重用布局,没啥可说的<merge>标签是作为标签的一种辅助扩展来使用的,它的主要作用是为了防止在引用布局文件时产生多余的布局嵌套。 看个例子,简单明了。 看一下xml代码<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/an
2016-03-24 15:29:15 374
原创 Android下载,在通知栏更新进度
Notification长使用的使用的属性常量: DEFAULT_ALL 使用所有默认值,比如声音,震动,闪屏等等 DEFAULT_LIGHTS 使用默认闪光提示 DEFAULT_SOUNDS 使用默认提示声音 DEFAULT_VIBRATE 使用默认手机震动 【说明】:加入手机震动,一定要在manifest.xml中加入权限:<uses-permission android:na
2016-03-24 11:19:55 1483
原创 AndroidStudio .gitignore忽略文件
.gitignore忽略文件注意:要跟服务器同步之前设置,同步之后设置会不起作用#built application files*.apk*.ap_# files for the dex VM*.dex# Java class files*.class# generated filesbin/gen/out/build/# Local configuration file (sdk
2016-03-23 11:20:59 5729
原创 Android中的线程与线程池
内容来自《Android艺术开发探索》 线程 (1)AsyncTask AsyncTask使用一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把后台的进度和最终结果传递给主线程并在主线程中更新UI。从实现上来说,AsyncTask封装了Thread和Handler,AsyncTask不适合进行特别耗时的后台任务,对于特别耗时的任务来说,建议使用线程池。AsyncTask是一个抽象的泛
2016-03-12 17:02:00 307
原创 上拉加载下拉刷新的RecyclerView可添加headerView
上拉加载下拉刷新的RecycleView可添加headerView这个demo来自 github 我只是对代码重构了一下,支持原作者。 先说一下思路把,上拉和下拉都只是是给RecycleView添加了一个headerView和footerView。在用listView时添加一个headerView和footerView很简单,只要add一下就可以了。但到RecycleView上可没有什么ad
2016-01-19 22:41:16 1820
原创 IPC
内容理解来自《Android开发艺术探索》 1.使用多进程会造成的问题 (1)静态成员和单例模式完全失效 (2)线程同步机制完全失效 (3)SharedPreferences的可靠性下降 (4)Application会创建多次 2.Serializable与Parcelable3.Android中的IPC方式 (1)使用Bundle
2015-11-14 22:25:57 365
标签云效果
2016-02-24
MyDialog一个简单的dialog
2016-02-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人