#oid

Android适配器之DataModifyHelper数据操作类的封装

编写适配器代码时常常被以下几个问题所困扰:1.业务层和适配器中对同一组数据进行维护,难以管理2.在业务层针对数据进行修改后必须通知适配器更新,否则提示ThecontentoftheadapterhaschangedbutListViewdidnotreceiveanotification3.业务层修改数据时充斥大量的非...

Android之基于AssetManager实现换肤方案

AssetManager的addAssetPath负责将另一个apk的资源文件加载进当前应用,这里由于是api隐藏方法,采用反射方式调用。查看addAssetPath方法注释,允许传递的路径为资源目录或者zip文件。/***Addanadditionalsetofassetstotheassetmanager.This...

Android适配器之定义PagerAdapter万能适配器

推荐优先本地搜索浏览 Android适配器之DataModifyHelper数据操作类的封装一般使用pageAdapter需要实现getcount、isViewFromObject、instantiateItem、destroyItem等默认函数,其实完全可以抽取共有代码到父类当中。/***Createdby...

Android适配器之基于BaseAdapter定义AbslistView万能适配器

推荐优先本地搜索浏览 Android适配器之DataModifyHelper数据操作类的封装定义BaseAdapter抽象基类,抽取共性部分,即实现getCount、getItem、getItemId观察源码可知,在构造函数中实例化DataModifyHelper对象,该对象负责数据的增删改查等操作。适配器中...

Android之缩减apk大小[资源文件篇]:基于自定义Shape设置ShapeDrawable

过去由于设计湿的吹毛求疵,往往不得不多做很多工作。比如下面的这张图片,很典型的按钮背景图片,一般Android会处理成.9文件以供项目使用。但事情往往没有这么简单,需求会要求在不同的地方高度不一致,这个时候.9文件的弱点就出现了。我们拿到UI那边的标注以及切图时,会默认高度是不会拉伸或者压缩的,下面截图中右中为期望效果...

Android Studio之优化gradle编译速度

明显感觉到软件卡顿以至于影响开发进度,影响开发心情后再想办法解决,优先专注应用功能实现。打开AndroidStudio时不进入项目页面,在“WelcomeToAndroidStudio”界面选择“Configure”-“Seeting”左侧选择An...

Android适配器之 V7扩展包 RecyclerView 的使用以及万能适配器的封装实现

compile'com.android.support:appcompat-v7:23.2.1'compile'com.android.support:recyclerview-v7:23.2.1'备注:recyclerview的版本号要与appcompat的一致,此处为:v7:23.2.1以泛型方式定义通用Recyc...

Android之Activity在横竖屏切换时的生命周期

先来张经典图镇楼...创建Activity的调用顺序锁定屏幕解锁屏幕该方法在Activity窗口获得或失去焦点时被调用,例如创建时首次呈现在用户面前;当前Activity被其他Activity覆盖;当前Activity转到其他Activity或按Home键回到主屏,自身退居后台;用户退出当前Activity。注:对于该...

Android之基于Gson的ParameterizedType进行泛型解析

创建GsonResponsePasare解析类,classGsonResponsePasare<T>{Tdeal(Stringresponse){TypegsonType=newTypeToken<CommonResponse<T>>(){}.getType();CommonResp...

Android之View.getRootView

view.getRootView的官方解释是Findsthetopmostviewinthecurrentviewhierarchy那这个顶层的View究竟是xml的最外层布局,还是getDecorView,抑或其他的呢?下面通过测试来了解getRootView的真正含义,定义xml文件如下:<?xmlversi...
代码星球 ·2020-04-09

Android之颜色表示法:#与0x的区别

从计算机的数值表示上讲,0x开头的其实并不是所谓颜色代码的表示方法,而是16进制数的标准写法,譬如0xA就是十进制的10。而#开头的六(或三)位十六进制数是在设计领域(如CSS以及一些绘图软件)中颜色代码的表示方法。如果我们只考虑24位颜色的话,电脑中每个像素的颜色其实就是用3个字节(24位)的无符号整数来存储的。所以...

Android之.9图片原理解析

本身是.9.png的资源,但是在修改过程中你希望这张.9.png不能被拉伸(在做皮肤的情况中有可能会遇到),那怎么办呢?只要把拉伸区域的点点在透明像素的地方就可以了,这样拉伸的时候会拉伸透明部分的像素,而不会拉伸图像本身。如下图:大家可以看到拉伸区域的黑点是可以不连续的。来自为知笔记(Wiz)...
代码星球 ·2020-04-09

Android XML资源文件中@、@android、@、?、@+的含义与区别

1、@[<package_name>:][<resource_type>/]<resource_name>和@+[<package_name>:][<resource_type>/]<resource_name>,@android:id ...

Android 为应用添加默认加载页

默认的情况下,程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据等。具体步骤如下: 1./res/values/styles.xml在Theme中,添加一个android:windowBackgrounds属性,设置需要的图片2.在AndroidManifest.x...

Android之JNI:Android Studio使用Gradle编译C/C++源码

1.提示错误:Error:NDKintegrationisdeprecatedinthecurrentplugin.Considertryingthenewexperimentalplugin.Fordetails,seehttp://tools.android.com/tech-docs/new-build-syst...
首页上一页...9596979899...下一页尾页