欢迎转载,请注明出处! 博客园:http://www.cnblogs.com/ 农民伯伯: http://www.cnblogs.com/over140/ 正文 一、效果图 看到这个图时你可以先想想如果是你,你怎么实现这个效果。马上想到用RelativeLayout?NO,NO,NO,,, 二、实现代码<?xml version="1.0"
观察者模式二话不说,上来就是定义定义对象间的一种一对多的依赖关系,当一个对象的状态发送改变时,所有依赖于它的对象都能得到通知并被自动更新这个好像还好理解那么一点点,不过还是先来讲个情景,天气预报的短信服务,一旦付费订阅,每次天气更新都会向你及时发送其实就是我们无需每时每刻关注我们感兴趣的东西,我们只需要订阅它即可,一旦我们订阅的事务有变化了,被订阅的事务就会即时的通知我们我们来看一下观察者模式的组
为了防止自己的劳动成果被别人窃取,混淆代码能有效防止被反编译,下面来总结以下混淆代码的步骤:1. 大家也许都注意到新建一个工程会看到项目下边有这样proguard-project.txt一个文件,这个对混淆代码很重要,如果你不小心删掉了,没关系,从其他地方拷贝一个过来2. 最重要的就是在proguard-project.txt添加混淆的申明了: a. 把所有你的jar包都申明进来,例如:
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/380674751、概述Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Animation相当简单,不过只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性。比如
转载自:http://www.cnblogs.com/yc-755909659/p/4290114.html1.Animation 动画类型Android的animation由四种类型组成:XML中alph渐变透明度动画效果scale渐变尺寸伸缩动画效果translate画面转换位置移动动画效果rotate画面转移旋转动画效果 JavaCode中AlphaAnimation渐变透明度动画
Android中的Looper类,是用来封装消息循环和消息队列的一个类,用于在android线程中进行消息处理。handler其实可以看做是一个工具类,用来向消息队列中插入消息的。 (1) Looper类用来为一个线程开启一个消息循环。 默认情况下android中新诞生的线程是没有开启消息循环的。(主线程除外,主线程系统会自动为其创建
出处:http://blog.csdn.net/lmj623565791/article/details/24252901第一种,集成view,控件的样式自己画:很多的Android入门程序猿来说对于Android自定义View,可能都是比较恐惧的,但是这又是高手进阶的必经之路,所有准备在自定义View上面花一些功夫,多写一些文章。先总结下自定义View的步骤:1、自定义View的属性2、在Vie
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式。 其实,要创建和解析JSON数据,也可以使用GSON来完成。GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库。使用GSON,可以很容易的将一串JSON数据转换
断点调试的启动方式 android studio启动断点调试的方法有两种,其一是下好断点,然后点击以Debug的形式编译运行程序。第二种方式是在程序运行中启动断点调试。方式:启动app后,点击RUN—>,弹出如下的提示框:在需要的地方打断点,条件出发后就可以直接进入调试模式。断点调试的基本操作 从箭头所指的位置开
一、自定义抓取错误日志的工具类1、获取app奔溃日志的工具类com.happyparking.utilsandroid.content.Contextandroid.content.pm.PackageInfoandroid.content.pm.PackageManagerandroid.os.Buildandroid.os.Looperandroid.util.Logjava.io.Filej
蓝牙工作流程
eventbus和观察者是一样的,需要先导入eventbus的架包。基本的使用步骤就是如下4步,定义事件类型:`public class MyEvent {}`定义事件处理方法:`public void onEventMainThread`注册订阅者:`EventBus.getDefault().register(this)`发送事件:`EventBus.getDefault().post(new
参考:http://www.cnblogs.com/shuaiwen/archive/2013/07/18/3198385.htmlhttp://www.yiibai.com/android/android_bluetooth.htmlhttp://blog.csdn.net/centralperk/article/details/8080908http://blog.csdn.net/xubin
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub &
ProGuard简介 ProGuard是一个SourceForge上非常知名的开源项目。官网网址是:http://proguard.sourceforge.net/。 Java的字节码一般是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGu
转自http://blog.csdn.net/manoel/article/details/39183025通常,app中的数据都是以ListView的形式展示的。默认地,把“新”数据添加到数据列表的尾部。但是,如果是IM类型的app,比如查看历史消息这个模块。新数据并不是插到数据列表的尾部,而是插到数据列表的头部。要实现比较好的用户体验,需要保持当前的ListView的位置。换句话说,如果我们能
一、 从resource中的raw文件夹中获取文件并读取数据(资源文件只能读不能写)String res = ""; try{ InputStream in = getResources().openRawResource(R.raw.bbi); //在\Test\r
1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。
禁止Edittext弹出软件盘,光标依然正常显示
wheel使用+适配器
http://www.androiddevtools.cn/
https://github.com/Freelander/Android_Data/blob/master/Android-Librarys-Top-100.md?utm_source=next.36kr.com
在线接口测试工具:http://www.atool.org/httptest.php;http://www.coolaf.com/ 在线json编辑器:http://www.atool.org/jsoneditor.php json在线解析:http://www.coolaf.com/tool/json 在线json转xml:http://www.atool.org/xml_json.php 在线
极光论坛很多人遇到这种问题:在收到推送消息的那一瞬间,推送图标被截取。在极光论坛大多数人的答案是图片适配,既在不同的drawble文件夹放推送的icon,然,极光推送默认调用应用的launcher_icon,我的手机分辨率是1920*1080,调用drawable-xhdpi文件夹里面的launcher_icon,大小为144*144,而在drawable-xhdpi中
ClipDrawable 是一个挺好看的一个图片Drawable,操作起来也算比较简单。下面先把代码贴上来,通过例子进行说明。main.xml文件的内容:[html] view plain copy print?<?xml version="1.0" encoding="utf-8"?> <LinearLay
文章出处:http://blog.csdn.net/brokge/article/details/9713041 1.Shape简介作用:XML中定义的几何形状位置:res/drawable/文件的名称.xml使用的方法:Java代码中:R.drawable.文件的名称XML中:Android:background="@drawable/文件的名称"属性:<shape> A
Android Studio快捷键
studio设置问题集锦
问题是把清单文件里面的<data android:scheme="tencent*******" />设置为tencent+appid,记得前面一定要加“tencent”,另外,appid得是在腾讯开放后台申请的代码里面如下:(Bundle savedInstanceState) { .onCrea
http://blog.csdn.net/loongggdroid/article/details/17515113 在继承ViewGroup类时,需要重写两个方法,分别是onMeasure和onLayout。1,在方法onMeasure中调用setMeasuredDimension方法void android.view.View.setMeasuredDimension(int measured
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号