本篇介绍Listview的显示,对于listview有许多的适配器,如ArrayAdapter,BaseAdapter,SimpleAdapter等等.本篇先热身一下,介绍最简单的SimpleAdapter适配器. 对于安卓界面的显示. 首先在主界面布局文件main.xml加入如下代码: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http…
Android系统以ARGB表示每个像素,所以每个像素占用4个字节,很容易内存溢出.假设手机内存比较小,而要去加载一张像素很高的图片的时候,就会因为内存不足导致崩溃.这种异常是无法捕获的 内存不足并不是说图片的大小决定的,最主要的因素是像素问题. 因此加载大图片就要设置相应的缩放比例. * 计算机把图片所有像素信息全部解析出来,保存至内存 * Android保存图片像素信息,是用ARGB保存 * 手机屏幕320*480,总像素:153600 * 图片宽高2400*3200,总像素7680000…
之前在Android简易实战教程--第七话<在内存中存储用户名和密码> 那里是把用户名和密码保存到了内存中,这一篇把用户名和密码保存至SharedPreferences文件.为了引起误导,声明实际开发中不会用到这两种方式,这里指示提供一种思路和给初学者学习简单的api. 由于内容和之前的基本一样,不做过多的解释.直接上代码: xml文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi…
承接第二十八话加载大图片,本篇介绍如何创建一个图片的副本. 安卓中加载的原图是无法对其修改的,因为默认权限是只读的.但是通过创建副本,就可以对其做一些修改,绘制等了. 首先创建一个简单的布局.一个放原图,一个放副本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 上一篇已经把王略中的图片获取到了.生活中有这么些场景:微信联网打开别人照片后,当手机断网的时候再去点击人家的额图片还能完整看到.这时候,已经不是去网路中获取图片了,其实微信在获取网络图片同时把图片在本地做咯额个缓存,这也是微信生成垃圾文件最多的原因之一. 本篇虽然以最简单直接的方式去对图片做缓存,但是,其实本质都差不多的.因为上一篇已经介绍的很…
第七话里面介绍了在内部存储读写文件 点击打开链接. 这样有一个比较打的问题,假设系统内存不够用,杀本应用无法执行,或者本应用被用户卸载重新安装后.以前保存的用户名和密码都不会得到回显.所以,有必要注意这个问题 因此把文件保存到sd卡中.即今天所写的  第十五话<在外部存储中读写文件> 首先布局文件和第七话一样: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:…
访问网络已经有了很成熟的框架.这一篇只是介绍一下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"…
昨晚写博客太仓促,代码结构有问题,早上测试发现没法监听文本变化!今日更改一下.真心见谅啦,哈哈!主活动的代码已经改好了,看截图这次的确实现了文本监听变化情况. 监听文本输入情况,仅仅限于土司略显low点,这一篇就稍微"高大上"些,体验一下滚动和震动. 首先,需要两个文件.截图: 两个文件的内容分别如下: cycle_7: <?xml version="1.0" encoding="utf-8"?> <!-- 表示循环的次数 --…
打开谷歌api,对widget小部件做如下说明: App Widgets are miniature application views that can be embedded in otherapplications(such as the Home screen) and receive periodic updates. These views arereferred to as Widgets in the user interface,and you can publish one…
转载此文章请注明出处:点击打开链接   http://blog.csdn.net/qq_32059827/article/details/52313516 首先,很荣幸此专栏能被CSDN推荐到主页.荣幸的同时,也激励自己会把这个专栏一直更新下去. 进入今天的主题: 我们在qq登录的时候,会有一个下拉的按钮,来查看历史登录账号.这一篇就模拟这个效果,自定义组合框实现之. 这里面会用到popupwindow,对于popupwindow的原始用法欢迎看之前的一篇文章,对弹出窗体做过介绍:点击打开链接…
没睡着觉,起来更篇文章吧哈哈!首先祝贺李宗伟击败我丹,虽然我是支持我丹的,但是他也不容易哈哈,值得尊敬的人!切入正题:这一篇来介绍个自定义广播接收者. 通常我们在外拨电话的时候,一般为使用网络电话.如果电话号码是某种类型的电话,会自动在前面加上ip号.从而节省费用.今天这一篇就模拟ip拨号.这个功能,是通过广播接收者来实现的.自定义广播接收者,"监听"外拨电话时候系统发出的广播(系统对我们注册的广播大喊:"亲爱的,我来了!"),收到信息后,给外拨电话前缀价格ip号码…
之前对系统自带的土司的源码做了简要分析,见博客:点击打开链接 这一篇给一个小案例,自定义土司,模拟腾讯卫士的小火箭发射.如果想要迅速看懂代码,建议先去看一下上篇介绍点击打开链接 首先,定义一个服务,在这个服务里面,完成土司的创建(小火箭布局创建) 烟的效果属于动画播放,而且要依托一个activity.(这个activity要定义为透明状态) 定义烟的activity的布局文件 <?xml version="1.0" encoding="utf-8"?>…
在之前的小案例中写过一篇使用HttpUrlConnection获取网络数据的例子.在OKhttp盛行的时代,当然要学会怎么使用它,本篇就对其基本使用做一个介绍,然后再使用它的接口回调的方式获取相同的数据.因为它封装的很好了,并不需要我们去做封装,只需要写少量的代码就可以获取到复杂的网络数据了. 一.OKhttp的最基本使用. 还是直接使用代码来说话: 1.添加依赖: Github网址:https://github.com/square/okhttp compile 'com.squareup.o…
ListView的下拉刷新很常见,很多开源的框架都能做到这个效果,当然也可以自己去实现.本篇案例是基于xlistview的. 布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent&quo…
通知的使用,无疑是Android系统的亮点之一:就连IOS在5.0开始也引入了类似通知的技巧.可见它的实用性. 今天这个小案例,就学习一下通知的基本使用,API是使用最新的API,4.3以前创建通知的API已经过时. 首先定义个布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools&…
本篇小案例,完成一个倒计时.方式选择AsyncTask.代码贴在下面: 布局文件soeasy: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_hei…
当数据库的数据发生改变,我们又想知道具体改变的情况时,就需要对数据库的变化情况做一个监控.这个任务,就由内容观察者来完成.下面这个案例,为短信数据库注册内容观察者,来监控短信的变化情况,当短信数据库发生改变的时候,去做相应的业务处理即可(这里只是打印log) 布局文件选择默认,因为用不到任何界面. 看一下主活动中的代码: package com.itydl.contentobserver; import android.net.Uri; import android.os.Bundle; imp…
如果想要获取系统手机应用的详细信息,那么下边代码可以直接作为模板使用.笔者对每一行代码都做了注解,供您参考.直接上代码: package com.example.itydl.engines; import java.io.File; import java.util.ArrayList; import java.util.List; import com.example.itydl.domain.AppBean; import android.content.Context; import an…
手机RAM存储,类似于电脑的内存.这一篇,对通过代码获取手机总内存大小做详细介绍. 首先,定义一个engine类,这个类功能就是获取进程信息,包括运行的程序个数,系统总内存,系统剩余总内存.本篇先完成获取总内存. 代码如下: public class TaskManagerEngine { //获取总内存大小 public static long getTotalMemorySize(Context context){ long size = 0; //获取ActivityManager管理,要…
祝新年快乐!2017(一起)前行. 转载博客请注明出处:道龙的博客 本篇简答的小案例,使用动画知识,完成一个类似雷达扫描效果,并且加入自定义进度条.对于自定义进度条前面有很详细的解析和案例了,本篇就结合动画知识串起来,并且再加入之前写过的AsynckTask知识. 读者朋友也可以阅读之前两篇小案例,读者可以参考:Android简易实战教程--第三十三话< AsyncTask异步倒计时> Android简易实战教程--第三十四话< 自定义SeekBar以及里面的一些小知识> 本篇源代…
转载博客请注明出处:道龙的博客 之前,写过一篇使用异步任务AysncTask实现倒计时的小案例,喜欢的话可以参考博客:Android简易实战教程--第三十三话< AsyncTask异步倒计时>. 本篇在此基础上,使用Handler实现一些顺序计数以及倒叙计数.本篇小案例基本涵盖Handler使用场景还值得推敲哒~ 并作出提示 4. 点击"暂停" 上面的数值文本不再变化 接下来就跟着文章一步步的实现 一.初始时显示10,可以通过点击按钮改变其值,即"手动增加&quo…
Android项目实战(二十八):Zxing二维码实现及优化   前言: 多年之前接触过zxing实现二维码,没想到今日项目中再此使用竟然使用的还是zxing,百度之,竟是如此牛的玩意. 当然,项目中我们也许只会用到二维码的扫描和生成两个功能,所以不必下载完整的jar包,使用简化版的即可,下文可见. 这篇文章讲述:1.如果快速在项目中集成zxing,实现扫描和生成二维码功能 2.根据项目需求去修改源码实现我们的要求并进行优化 一.快速集成zxing二维码 1.下载库文件 : http://dow…
Android项目实战(二十八):使用Zxing实现二维码及优化实例 作者:听着music睡 字体:[增加 减小] 类型:转载 时间:2016-11-21我要评论 这篇文章主要介绍了Android项目实战(二十八):使用Zxing实现二维码及优化实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 前言: 多年之前接触过zxing实现二维码,没想到今日项目中再此使用竟然使用的还是zxing,百度之,竟是如此牛的玩意. 当然,项目中我们也许只会用到二维码的扫描和生成两个功能,所以不必下载完整的…
转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/51707931 从今天开始,本专栏持续更新Android简易实战类博客文章.和以往专栏不同,此专栏只有实例.每个实例尽量按照知识点对应相应一章节的内容去写,循序渐进.有些实例可能会与另一个专栏有重复的文章. 开始本专栏的第一个简易案例: 首先设置两个布局文件,一个布局文件进行输入数据,获取加法运算:另一个布局文件进行显示最终结果.Activity1启动Activity2,并传递计算…
之前本专栏文章中的小案例有写到:第三十九话<Chronometer实现倒计时> 以及使用异步实现倒计时:第三十三话< AsyncTask异步倒计时> 本篇文章 结合Timer.TimerTask和Handler来实现相同的功能. 下面介绍一下Handler及其主要用法: 在android中提供了一种异步回调机制Handler,利用它我们可以在完成任务后做出相应的通知. handler基本使用: 在主线程中,使用handler很简单,new一个Handler对象然后实现其handle…
Android5.X后,引入了RecyclerView,这个控件使用起来非常的方便,不但可以完成listView的效果,而且还可以实现ListView无法实现的效果.当然,在新能方便也做了大大的提高.本篇 第四十六话 案例,就使用这个控件,完成竖向和横向加载数据. 我们直接上代码,在每一步后都简要分析一下功能: 一.实现竖向滚动 1.定义一个实体类: package com.itydl.recyclerview; public class Fruit { private String name;…
这一篇,承接地八话.使用高效的方式备份短信--xml序列化器. 存储短信,要以对象的方式存储.首先创建javabean: package com.itydl.createxml.domain; public class Message { private String body; private String date; private String address; private String type; public String getBody() { return body; } pu…
  分类: Android高手进阶 Android基础教程 2012-09-14 18:10 29759人阅读 评论(35) 收藏 举报 android相册layoutobjectclassloaderencoding 大家好,相信大家用的ListView控件一定很多的,是竖向滑动的,复用convertView,我们可以加载成千上万的数据,但有时候我们会有 这个需求比如相册,我们想横向滑动,并且数据有好多,这时候ViewPager控件就派上用场了,ViewPager使用时候我们需要导入第三方包…
上一篇小案例,完成了一个普通的通知,点击通知启动了一个活动.但是那里的通知没有加入些"靓点",这一篇就给它加入自定义的布局,完成自定义的通知. 应用:比如QQ音乐为例,当点击音乐播放的时候,手机屏幕上方就会展示播放音乐的通知,这个通知不仅仅拥有布局,而且响应点击事件,能完成上一曲下一曲的切换.今天这个小案例,就以此为背景展开. 首先,主活动布局不需要改变,还是放置两个按钮用于开启.关闭服务. 主活动中的代码做了了较大改变,如下: package com.example.notifica…