android
xutao3716
这个作者很懒,什么都没留下…
展开
-
android ContentResolver详解
在Android 应用程序之间数据共享—-ContentResolver中,已经说明了Android是如何实现应用程序之间数据共享的,并详细解析了如何获取其他应用程序共享的数据。ContentProviders存储和检索数据,通过它可以让所有的应用程序访问到,这也是应用程序之间唯一共享数据的方法。那么如何将应用程序的数据暴露出去? 通过以前文章的学习,知道ContentResol转载 2014-08-26 08:57:41 · 1282 阅读 · 0 评论 -
跨进程操作Sqlite数据库
最近开发了一个日志收集和上传的功能,主要包括运行时日志和崩溃日志两个类型。崩溃日志:崩溃日志的收集要容易点,当捕获到崩溃信息后,直接在本地生成一个文件,将崩溃信息写入文件中,等到下一次上传运行时日志运行时日志就是我们通过Log往控制台打印出来的调试信息,因此它的收集就没有崩溃日志那么简单了,我们通过自定义的LogUtil工具类将我们打印的日志信息重定向到控制类里,然后在保存到数据库中,当上传时从数据原创 2017-08-11 10:53:57 · 3478 阅读 · 0 评论 -
ViewPager嵌套RecyclerView刷新问题
问题: ViewPager包含多个Fragment,每个Fragment里面又有RecyclerView,当从Fragment跳转到下一个Fragment时,当前Fragment里的RecyclerView不能刷新解决办法: 由于ViewPager的缓存问题,导致的,增加Fragment的缓存数量就可解决 viewPager.setOffscreenPageLimit(3);原创 2017-08-02 14:48:33 · 4971 阅读 · 0 评论 -
RecyclerView设置divider分割线
RecyclerView设置divider,需要自定义相关实现类:public class DividerGridItemDecoration extends RecyclerView.ItemDecoration { private static final int[] ATTRS = new int[]{android.R.attr.listDivider}; private Dr转载 2016-10-22 14:39:57 · 4823 阅读 · 1 评论 -
ViewHolder 的一种更简洁写法
ViewHolder的写法:public class ViewHolder { // I added a generic return type to reduce the casting noise in client code @SuppressWarnings("unchecked") public static T get(View view, int id) {转载 2016-05-09 18:26:48 · 464 阅读 · 0 评论 -
Socket发送图片,循环发送
Socket循环发送图片,每隔20ms发送一张,该代码运行的线程中: @Override public void run() { // TODO Auto-generated method stub ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();原创 2015-11-20 15:12:02 · 861 阅读 · 0 评论 -
Android Fragment小试一下
学习Android之余,用Fragment实现了一个效果,左边一个ListView,右边一个Fragment,点击ListView中的每一项,右边切换不同的界面,实现了Fragment的经典实用案例,关键代码如下:fragment_contain布局: android:layout_width="match_parent" android:layout_height原创 2015-10-15 15:03:20 · 505 阅读 · 0 评论 -
android 水平progressBar动态加载
当你需要动态显示一个progressBar时,动态显示进度,并在右侧显示加载进度,请参考下面代码: 重写写布局public class LineProgressBar extends View {private Paint paint;private int lineColor;private int lineProgressColor;private int textColor;pri原创 2015-10-26 14:17:17 · 672 阅读 · 0 评论 -
自定义ImageView实现播放帧动画
对于帧动画的显示有多种不同的实现方式,帧动画的图片有两种不同的情形,一种是多个单张图片,放在animation-list对应的xml里面,采用轮播的方式进行;另一种是一张大图片排列不同的小图片,之前实现的方式是采用继承SurfaceView,另开线程,逐步分割图片显示,同样也是轮播的方式实现动画,现在我们综合以上两种实现方式,自定义自己实现一张大图的帧动画播放(ps:有时候为了便于维护,需要一张大图原创 2015-10-26 17:23:16 · 3253 阅读 · 0 评论 -
Android、Bitmap转Drawable和Drawable转Bitmap
1.Drawable—>BitmapDrawable drawable = null; Bitmap map = ((BitmapDrawable) drawable).getBitmap();2.Bitmap—->DrawableBitmap Drawable drawable =new BitmapDrawable(bmp);原创 2015-10-26 10:58:27 · 431 阅读 · 0 评论 -
Android 线程池及多线程下载,Progressbar动态更新以及文件保存sd卡
最近研究了android 多线程下载的用法,写了一个小demo,总结一下学习知识和分享一下学习经验吧。 线程池代码为:ThreadPool.javapublic final class ThreadPool { // 线程池中默认线程的个数为5 private static int worker_num = 5; // 工作线程 private WorkThread原创 2015-10-23 09:57:59 · 872 阅读 · 0 评论 -
android view.getWidth(), view.getHeight() 返回0的问题的解决方案
android开发中有很多时候需要获取view的宽高尺寸。Android中提供了View.getWidth()和View.getHeight()两个方法。但是初学者发现调用这两个方法的返回结果经常为0.这是因为在onCreate(), onResume()方法中调用View.getWidth()方法的时候,这个view还没有绘制。那么怎么正确地得到view的尺寸呢?简单罗列下解决方法。 首先说转载 2015-10-21 10:57:02 · 1007 阅读 · 0 评论 -
Android开发之输入法详解
输入法的例子和源代码看了不少时间了,看得头很晕,很郁闷。静下心来把整个代码想了一遍,其实大部分代码都在处理绘制界面,以及事件的处理,核心代码很少,都被底层封装得很完美了。 先看看一般输入法的界面:分为两个部分,上部分是候选窗口(CandidateView),用来显示候选词,现在常用的输入法都有这个功能,如在搜狗、google输入法中输入abc,输入框中就会显示很多相关联的中文词。下部分就是软键盘了转载 2015-11-03 15:26:02 · 5601 阅读 · 0 评论 -
Android 编程下 Touch 事件的分发和消费机制
Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev);能够响应这些方法的控件包括:ViewGroup、View、Activity。方法与控件的对应关系如下表所示:Android 中与 Touch 事转载 2015-11-03 18:05:32 · 414 阅读 · 0 评论 -
仿美团下拉刷新动画
经常使用美团,感觉下拉刷新动画挺好玩的,抽空也做了一个,图片资源是网上获取,先看效果: 本文所实现的功能是在网上流传的下拉刷新框架(PullToRefreshView.java),然后修改而得的,只在分享经验,代码如下:package refresh_view;import com.example.pullrefersh.R;import android.content.Context;原创 2015-10-19 12:46:19 · 5716 阅读 · 8 评论 -
Android限制输入框10个汉字或20个字母
功能较少,直接看代码:import android.text.InputFilterimport android.text.Spanned/** * @author: Sid * @email: 1157903494@qq.com * @date: 2018/5/31 17:18 */class ChineseLengthFilter(val length: Int) : Inpu...原创 2018-06-01 10:04:17 · 1579 阅读 · 0 评论