• Android布局优化,看这3点就够了!
    码个蛋(codeegg)第 712 次推文作者:Android技术博客:https://www.jianshu.com/p/2ee61b88175e前言在编写Android布局时总会遇到这样或者那样的痛点,比如:有些布局的在很多页面都用到了,而且样式都一样,每次用到都要复制粘贴一大段,有没有办法可以复用呢?解决了1中的问题之后,发现复用的布局外面总要额外套上一层布局,要知道布局嵌套是会影响性能的呐;有些布局只有用到时才会显示,但是必须提前写好,虽然设置了为invisible或gone,还是多多少少会占用内存...
  • Android 浮窗从未如此简单
    本文作者作者:呱呱_链接:https://www.jianshu.com/p/7d1a7c82094a本文由作者授权发布。应用浮窗由于良好的便捷性和拓展性,在某些场景下有着不错的交互体验。恰巧项目需求有用到,可是逛了一圈GitHub,并没有找到满意的浮窗控件。索性造个好用的轮子,方便你我他,遂成此文。GitHub地址:https://github.com/princekin-f/EasyFloat1需求:我们想要什么要能浮在某个单独的页面上,或者多个页面上;要支持拖拽,这样才够灵活;可能需要吸附边缘,也可能...
  • 是时候让 Android Tools 属性拯救你了
    Android 的 Tools attributes 应运而生。Android studio 支持很多在 XML 文件中以 tools 为命名空间的属性,当构建 App 时这些属性会被擦除,对 APK 的大小和运行时行为没有任何影响,这也就是我们文章最初想要的结果。如:我们都知道,android:elevation 属性是在 API 21 版本以上才支持的,所以我们可以通过以下代码规避 lint 的警告:<Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:elevation="4dp"tools:targetApi="lollipop"/>tools:locale这个属性主要用在 <resource> 标签内,用来指定当前资源中默认为哪种语言和区域,进而规避语言拼写的检测,比如你可以指定 values/strings.xml 文件的默认语言是西班牙语而不是英语:<resourcesxmlns:tools="http://schemas.android.com/tools"tools:locale="es">Resource shrinking attributes即资源压缩属性。
  • Android 浮窗从未如此简单
    恰巧项目需求有用到,可是逛了一圈GitHub,并没有找到满意的浮窗控件。添加到Activity根布局相对比较简单,也不需要额外的权限。可是最大的问题是跟随Activity生命周期,只能在当前Activity显示。Window窗口则能很好的解决全局显示的问题,可是在Android 6.0之后,使用TYPE_APPLICATION_OVERLAY属性,需要进行悬浮窗权限的申请,必须手动授权。如果直接在Activity创建,当遇到Activity被销毁时,这时的浮窗将是不可控的,满足不了我们的需求啊。
官方公众号