10 粉象生活邀请ID303262

尚未进行身份认证

码农

等级
博文 33
排名 27w+

android创建一个图片加载的类,用于对缓存的一些操作

packagecom.example.linux.lrucachetest;importandroid.graphics.Bitmap;importandroid.util.LruCache;/***Createdbyhuhxon2016/4/12.*/publicclassImageDownloader{privatestaticfinal...

2019-05-22 11:16:03

android基础,LruCache的使用及原理

在你应用程序的UI界面加载一张图片是一件很简单的事情,但是当你需要在界面上加载一大堆图片的时候,情况就变得复杂起来。Android为我们提供了LruCache,今天我们就来学习这个缓存的知识以及原理。...

2019-05-22 11:00:04

android购物车功能的实现原理

让我们分析下实现购物车功能需要解决的问题:1、在哪里处理按钮的点击响应事件,是适配器还是Activity或者Fragment2、如何知道你点击的按钮是哪一个列表项中的3、点击某个按钮的时候,如果列表项所需的数据改变了,如何更新UI4、列表项中存在会获取焦点的各种按钮,会导致列表项无法点击,只能点击按钮,这种情况怎么解决...

2019-03-18 09:20:40

HashMap,LinkedHashMap,TreeMap都属于Map

Map主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。HashMap是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为Null;允许多条记录的值为Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据...

2019-03-14 14:03:47

android轻量级缓存框架ACache

ACache类似于SharedPreferences,但是比SharedPreferences功能更加强大,SharedPreferences只能保存一些基本数据类型、Serializable、Bundle等数据,而Acache可以缓存如下数据:普通的字符串、JsonObject、JsonArray、Bitmap、Drawable、序列化的java对象,和byte数据。主要特色:...

2019-03-14 13:54:25

android序列化Parcelable与Serializable的性能比较

首先Parcelable的性能要强于Serializable的原因我需要简单的阐述一下1).在内存的使用中,前者在性能方面要强于后者2).后者在序列化操作的时候会产生大量的临时变量,(原因是使用了反射机制)从而导致GC的频繁调用,因此在性能上会稍微逊色3).Parcelable是以Ibinder作为信息载体的.在内存上的开销比较小,因此在内存之间进行数据传递的时候,A...

2019-03-14 13:50:16

android序列化的目的

(1).永久的保存对象数据(将对象数据保存在文件当中,或者是磁盘中(2).通过序列化操作将对象数据在网络上进行传输(由于网络传输是以字节流的方式对数据进行传输的.因此序列化的目的是将对象数据转换成字节流的形式)(3).将对象数据在进程之间进行传递(Activity之间传递对象数据时,需要在当前的Activity中对对象数据进行序列化操作.在另一个Activity中需要进行反序列化操...

2019-03-14 13:46:36

android屏幕适配兼容突破口

从dp和px的转换公式:px=dp*density可以看出,如果设计图宽为360dp,想要保证在所有设备计算得出的px值都正好是屏幕宽度的话,我们只能修改density的值。通过阅读源码,我们可以得知,density是DisplayMetrics中的成员变量,而DisplayMetrics实例通过Resources#getDisplayMetrics可以获得,...

2019-03-11 11:05:35

android探索新的适配方式

一般我们设计图都是以固定的尺寸来设计的。比如以分辨率1920px*1080px来设计,以density为3来标注,也就是屏幕其实是640dp*360dp。如果我们想在所有设备上显示完全一致,其实是不现实的,因为屏幕高宽比不是固定的,16:9、4:3甚至其他宽高比层出不穷,宽高比不同,显示完全一致就不可能了。但是通常下,我们只需要以宽或高一个维度去适配,比如我们Feed是上下滑动的,只需要保...

2019-03-11 11:02:33

传统dp适配方式的缺点

在Android开发中,由于Android碎片化严重,屏幕分辨率千奇百怪,而想要在各种分辨率的设备上显示基本一致的效果,适配成本越来越高。虽然Android官方提供了dp单位来适配,但其在各种奇怪分辨率下表现却不尽如人意,因此下面探索一种简单且低侵入的适配方式。传统dp适配方式的缺点android中的dp在渲染前会将dp转为px,计算公式: px=density*dp;...

2019-03-11 10:58:15

ListView中item点击事件无响应

ListView的Item点击事件突然无响应,问题一般是在listView中加入了button、checkbox等控件后出现的。这个问题是聚焦冲突造成的。在android里面,点击屏幕之后,点击事件会根据你的布局来进行分配的,当你的listView里面增加了button之后,点击事件第一优先分配给你listView里面的button。所以你的点击Item就失效了,这个时候你就要根据你的需求,是给你...

2019-03-09 11:32:58

判断网络和wifi是否可用

(1)判断网络是否可用publicstaticbooleanisConn(Contextcontext){booleanbisConnFlag=false;ConnectivityManagerconManager=(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVI...

2019-03-09 11:28:02

提示Activity not running的异常

在Activity中使用PopupWindow时,有时会提示Activitynotrunning的异常。这是因为Activity还没有显示出来就弹出PopupWindow了。解决的方式是需要重写onWindowFocusChanged()方法...

2019-03-09 11:27:24

TextView中加入超链接

在TextView的属性中增加android:autoLink="all"android:id="@+id/myTextView3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="welcom:http://www.google.com/"android...

2019-03-09 11:26:17

动态改变ImageView图片的大小

ImageView中加入android:scaleType="fitXY",考虑到此属性可能会造成当前UI有所变形,所以在使用的时候需要限制ImageView所在的层。

2019-03-09 11:25:26

TextView文字长按复制以及EditText点击文字全选功能

在TextView的布局中增加属性android:textIsSelectable="true"在EditText的布局中增加属性android:selectAllOnFocus="true"

2019-03-09 10:01:07

(android code)EditText显示和隐藏密码

publicstaticvoidvisible(EditTexteditText,booleanshow){editText.setTypeface(Typeface.DEFAULT);editText.setTransformationMethod(show?HideReturnsTransformationMethod.getInstance():Passwor...

2019-03-09 09:59:17

Android手机屏幕适配

在实际开发中像素一般使用dip为单位,而字体以sp为单位大小同时为了手机适配不同手机的屏幕,我们会在AndroidManifest.xml加入以下代码:android:normalScreens="true"android:anyDensity="true"android:smallScreens="true">...

2019-03-09 09:56:37

获取Android手机屏幕的分辨率

DisplayMetricsdm=newDisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(dm);//getWindowManager()displayWidth=dm.widthPixels;//屏幕宽度dispalyHeight=dm.heightPixels;//屏幕高度...

2019-03-09 09:54:23

去掉Activity的标题栏

有两种方式(1):在Activity的onCreate()方法中增加requestWindowFeature(Window.FEATURE_NO_TITLE);(2):在AndroidManifest.xml中配置的Activity样式中增加android:theme=”@android:style/Theme.NoTitleBar”....

2019-03-09 09:52:02
奖章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。