目录1.LitePal简介1.LitePal简介LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)的模式, 并将我们平时开发最常用到的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成各种建表和増删改查的操作。LitePal的项目主页上也有详细的使用文档,Githun地址原文:https://www.cnblogs.com/easy5weikai/p/12589184.html
安卓5.0Lollipop发布以来VectorDrawable作为安卓环境下的矢量化图形的方式一直由于兼容性问题而很少被用到,由于只能用于5.0以上系统,导致现在多少安卓机无法使用而一直被开发人员无限搁置。在官方给出兼容性的解决方案之前,开发者社区已经有几个解决方案了。比如: https://github.com/trello/victorhttps://github.com/telly/MrVectorhttps://github.com/wnafee/vector-compat但是就效果和易用性而言,我个人并不看好,其中MrV...
Invalidate正常刷新/*** 使整个视图无效。如果视图可见,* {@link #onDraw(android.graphics.Canvas)} 调用此方法后将在后续的UI刷新里调用onDraw(android.graphics.Canvas)方法* <p>* 必须从UI线程调用此方法。要从非UI线程调用,请调用{@link #postInvalidate()}.*/publicvoid invalidate() {invalidate(true);}/*** This is where the invalidate() work actually happens. A full invalidate()* causes the drawing cache to b...
在做Android app开发的时候由于机器配置不是特别高,而Android自带的模拟器非常耗资源,性能极其差。所以常常由于模拟器性能差而抓狂,相信不少开发者都会面临和我一样的问题。于是换了一台平常很少用的配置相对较好的thinkpad来试试,折腾了半天。最后发现主板不支持“Virtualization Technologe”,因而Haxm无法安装,抓狂!!!!实在无法忍受,网上查找了一下。有不少开发者推荐用genymotion或者海马玩等模拟器进行开发。 1...
下拉刷新,使用的是Android-PullToRefresh,Github--https://github.com/chrisbanes/Android-PullToRefreshPullToRefresh的简单使用办法1.通过GitHub把相关的lib下载下来,导入到ADT下载下来是这些文件然后导入到ADT,导入以后是4个工程LauncherActivityPullToRefreshListFragmentPullToRefreshViewPagerlibrary假如导入以后,工程上有红色错误的话,点击工程右键-》Properties-》Android,在Library中,把错误的library remove掉,...
自开发Android已有两年多,接触到很多优秀的框架。觉得很有必要汇总一下,以便日后查阅。帖子以后还会更新,总有新奇发生嘛。1,最初接触到的Android开发框架是afinal,这里贴一个给github上的地址。 个人觉得使用afinal下载图片比较爽,至于ORM与IOC方面有更好的框架可以考虑。2,说到Android SQLite当属ORMLite框架了,ORMLite官网,小巧而方便,还有各种数据操作方法。最给力的是直接在xml里面配置类名,略去了繁琐的创建表语句...
上一篇我们讲到与Fragment有关的经常使用函数,既然Fragment被称为是“小Activity”。如今我们来讲一下Fragment怎样与Acitivity通信。假设上一篇还有不懂得。能够再看一下。传送门。 Fragment与Activity通信的方式例如以下:一、通过初始化函数提供1.在动态加入Fragment的过程中,我们在Activity中通过Fragment.setArguments()的方法为Fragment提供数据。 2.在Fragment中,在onAttach()函数中通过调用getArguments()获得一个Bundle...
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/51346027无规矩不成方圆,是吧。。哈哈~~很庆幸,本人刚学java编程的时候,就被老师灌输了编程规范的相关知识,并且一直在遵守。有过团队开发经验的人都知道,如果没有一定的规范可行,那么代码看起来将是苦不堪言,甚至是乱七八糟。下面就介绍一下,我个人编码过程中使用到的规范,供大家参考~~命名规范命名规范要望文知义,简单明了。 命名规范定制太多,就会让...
Android提供了常见的音频、视频的编码、解码机制。借助于多媒体类MediaPlayer的支持,开发人员可以很方便在在应用中播放音频、视频。本篇博客主要讲解在Android平台下如何播放一个音频文件。本篇博客主要内容如下:MediaPlayerMediaPlayer的音频源使用MediaPlayer播放音乐MediaPlayer使用技巧Demo--一个简单的MP3播放器MediaPlayer上面提到过,Android下对于音频、视频的支持均需要使用到MediaPlayer,它主要用来控制Android下播放...
一、简单数值传递1、MainActivityprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);findViewById(R.id.button1).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.baidu.com")));Intent i=new Intent(MainActivity.this,NewActivit...
转载请注明出处:http://blog.csdn.net/zhoubin1992/article/details/46864777问题: 在郭神的第一行代码中,第8章的从相冊中选择图片这块,从相冊选一张裁剪后显示到屏幕。可是执行后会发现从相冊选了图片后。没有弹出裁剪的界面,直接返回。方案:查找原因时,发现SD卡路径下的output_image.jpg是一个0字节文件。所以 这张图片没有生成。然后我认为是向系统发送选择照片的意图出了问题。我好奇的查看了下系统的图库应用(galler...
看效果图:里面的线段颜色和节点图标都是可以自定义的。main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/rl_parent"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:padd...
问题:本机在获得ROOT权限后,使用Eclipse自带的File Explorer访问/data/data下各APP的存储文件,均无法打开。更换另外一个设备后,情况正常。Sumsung的有些机型在获得ROOT权限系统后,仍然不能读写系统文件,这个时候就需要我们使用adb为文件夹赋予权限了 解决办法:在配置好adb后,cmd进入命令行,按序号依次输入如下命令 1. adb shell 2. su (在PC输完此命令后,正常情...
1.在Eclipse中直接打开sqlite查看数据的插件http://www.coderzheaven.com/2011/04/18/sqlitemanager-plugin-for-eclipse/2.在线制作Buttonhttp://angrytools.com/android/button/3.Android Holo颜色生成器http://android-holo-colors.com/ 原文:http://www.cnblogs.com/lvdouzhou/p/5009573.html
/** * 获取现在时间 * * @return 返回时间类型 yyyy-MM-dd HH:mm:ss */ public static Date getNowDate() { Date currentTime = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateString = formatter.format(currentTime); ParsePosition pos = new ParsePosition(8); Date currentTime_2 = formatter.parse(dateString, pos); return currentTime_2; } /...