没睡着觉,起来更篇文章吧哈哈!首先祝贺李宗伟击败我丹,虽然我是支持我丹的,但是他也不容易哈哈,值得尊敬的人!切入正题:这一篇来介绍个自定义广播接收者. 通常我们在外拨电话的时候,一般为使用网络电话.如果电话号码是某种类型的电话,会自动在前面加上ip号.从而节省费用.今天这一篇就模拟ip拨号.这个功能,是通过广播接收者来实现的.自定义广播接收者,"监听"外拨电话时候系统发出的广播(系统对我们注册的广播大喊:"亲爱的,我来了!"),收到信息后,给外拨电话前缀价格ip号码…
承接第二十八话加载大图片,本篇介绍如何创建一个图片的副本. 安卓中加载的原图是无法对其修改的,因为默认权限是只读的.但是通过创建副本,就可以对其做一些修改,绘制等了. 首先创建一个简单的布局.一个放原图,一个放副本copy <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"…
本篇接第二十五话  点击打开链接   http://blog.csdn.net/qq_32059827/article/details/52389856 上一篇已经把王略中的图片获取到了.生活中有这么些场景:微信联网打开别人照片后,当手机断网的时候再去点击人家的额图片还能完整看到.这时候,已经不是去网路中获取图片了,其实微信在获取网络图片同时把图片在本地做咯额个缓存,这也是微信生成垃圾文件最多的原因之一. 本篇虽然以最简单直接的方式去对图片做缓存,但是,其实本质都差不多的.因为上一篇已经介绍的很…
Android系统以ARGB表示每个像素,所以每个像素占用4个字节,很容易内存溢出.假设手机内存比较小,而要去加载一张像素很高的图片的时候,就会因为内存不足导致崩溃.这种异常是无法捕获的 内存不足并不是说图片的大小决定的,最主要的因素是像素问题. 因此加载大图片就要设置相应的缩放比例. * 计算机把图片所有像素信息全部解析出来,保存至内存 * Android保存图片像素信息,是用ARGB保存 * 手机屏幕320*480,总像素:153600 * 图片宽高2400*3200,总像素7680000…
访问网络已经有了很成熟的框架.这一篇只是介绍一下HttpURLConnection的简单用法,以及里面的"注意点".这一篇可以复习或者学习HttpURLConnection.handler.以及Bitmap保存图片. 需求:点击按钮,访问一张网络图片显示. 布局很简单,只需要一个按钮一个ImagetView: <Button android:layout_width="wrap_content" android:layout_height="wrap…
今天完成一个画画板. 首先来个布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"…
转载此文章请注明出处:点击打开链接   http://blog.csdn.net/qq_32059827/article/details/52313516 首先,很荣幸此专栏能被CSDN推荐到主页.荣幸的同时,也激励自己会把这个专栏一直更新下去. 进入今天的主题: 我们在qq登录的时候,会有一个下拉的按钮,来查看历史登录账号.这一篇就模拟这个效果,自定义组合框实现之. 这里面会用到popupwindow,对于popupwindow的原始用法欢迎看之前的一篇文章,对弹出窗体做过介绍:点击打开链接…
转载此博客请注明出处点击打开链接       http://blog.csdn.net/qq_32059827/article/details/52444145 对于自定义view,可能是一个比较大的瓶颈期.笔者也是如此,就像毛主席说的,抓住主要矛盾,一切都不难.一些大神也声称过自定义view并不难.PS笔者比较实在,是真还没到感觉自定义view不难的水平! 这一篇文章,将对一个案例做详细的代码分析:即使说是入门的案例,但是掌握起来也不是那么容易:笔者尽量把所有代码标注注释帮助理解,同时,我觉得…
转载本博客请注明出处:点击打开链接  http://blog.csdn.net/qq_32059827/article/details/52327456 今天这篇稍微增强点代码量,可能要多花上5分钟喽. 本篇完成一个稍微显得绚丽的菜单项,模仿优酷选择菜单.如果想对其中的任意一项实现点击功能,自行加入即可. 现在就一步一步做出这个小案例: 在实现功能前,先看一下完成的结果,可能能对代码更好的理解. 效果演示: PS:由于代码中做出了详细的解释,不再做过多的赘述. 首先自定义组合控件布局: <Rel…
当数据库的数据发生改变,我们又想知道具体改变的情况时,就需要对数据库的变化情况做一个监控.这个任务,就由内容观察者来完成.下面这个案例,为短信数据库注册内容观察者,来监控短信的变化情况,当短信数据库发生改变的时候,去做相应的业务处理即可(这里只是打印log) 布局文件选择默认,因为用不到任何界面. 看一下主活动中的代码: package com.itydl.contentobserver; import android.net.Uri; import android.os.Bundle; imp…