技巧1. 在写布局文件时,有时不需要给控件指定text值,但是又想知道他的位置是否是自己想要他在的位置。这种情况只有在运行时给他指定text值才能确切地知道它显示的位置。

现在有一种方法可以实现,即利用tools命名空间,在布局文件中给控件指定text值,让我们可以在预览时知道控件的位置,但在真实运行时不显示。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
> <TextView
android:id="@+id/main_tv_ordercount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="100dp"
tools:text=" test"/> //将tools代替android就可以实现该内容只在预览时显示的效果
</RelativeLayout>

技巧2.  加载数据时的进度条动画

之前每次遇到需要用进度条的时候,如果不是产品需要,总是采用android自带的小黑圈来应付,不过看起来还真丑,也有去尝试写个漂亮点的自定义,总是不太满意。

一次偶然的机会看到了github上的这个AVLoadingIndicatorView,简直太漂亮了,并且支持动画达20多种,还可以根据源码开发出自己想要的动画,用法简单,感谢开源,传送门:https://github.com/81813780/AVLoadingIndicatorView

动画效果

每种动画对应的名字如下:

  1. BallPulse
  2. BallGridPulse
  3. BallClipRotate
  4. SquareSpin
  5. BallClipRotatePulse
  6. BallClipRotateMultiple
  7. BallPulseRise
  8. BallRotate
  9. CubeTransition
  10. BallZigZag
  11. BallZigZagDeflect
  12. BallTrianglePath
  13. BallScale
  14. LineScale
  15. LineScaleParty
  16. BallScaleMultiple
  17. BallPulseSync
  18. BallBeat
  19. LineScalePulseOut
  20. LineScalePulseOutRapid
  21. BallScaleRipple
  22. BallScaleRippleMultiple
  23. BallSpinFadeLoader
  24. LineSpinFadeLoader
  25. TriangleSkewSpin
  26. Pacman
  27. BallGridBeat
  28. SemiCircleSpin
  29. BallRotateChase
  30. Orbit
  31. AudioEqualizer

使用方法

step 1.AndroidStudio框架引入配置:build.grade配置

dependencies {
compile 'com.wang.avi:library:1.0.5'
compile 'com.nineoldandroids:library:2.4.0'
}

step 2. 布局文件

<com.wang.avi.AVLoadingIndicatorView
android:id="@+id/avloadingIndicatorView"
android:layout_width="wrap_content" //or your custom size
android:layout_height="wrap_content" //or your custom size
android:visibility="visible" //visible or gone
app:indicator="BallPulse" //指明采用哪种动画,动画名字与效果图一一对应
app:indicator_color="your color" //颜色指定
/>

step 3. activity中调用

void startAnim(){
findViewById(R.id.avloadingIndicatorView).setVisibility(View.VISIBLE);
} void stopAnim(){
findViewById(R.id.avloadingIndicatorView).setVisibility(View.GONE);
}

上面的几步在github上都有说明,在此只作备忘,其它用法可参考作者上传的demo。

android技巧总结的更多相关文章

  1. Android技巧分享——如何用电脑下载在Google play中应用的apk文件

    [Android技巧分享系列] 1.Android技巧分享——让官方模拟器和genymotion虚拟机飞起来 2.Android技巧分享——如何用电脑下载在Google play中应用的apk文件 G ...

  2. Eclipse中调试Android技巧

    Android eclipse中程序调试 一:断点调试 用eclipse开发android程序的时,跟VS一样是可以断点单步调试的. 步骤如下. 1 设置断点:在编码窗体的左边框上用鼠标双击,或者右键 ...

  3. android技巧(三)屏幕适配

    屏幕适配策略: 1.控件使用wrap_content.match_parent控制某些视图组件的宽度和高度,而不是硬编码的尺寸. “wrap_content”系统就会将视图的宽度或高度设置成所需的最小 ...

  4. android技巧:EditText输入错误时该怎样提示用户

    验证用户输入内容(EditText)应该及时准确的告诉用户,那么在Android系统中提示用户通常有以下做法: 1) 使用Toast提示 1 Toast.makeText(this, "邮箱 ...

  5. Android 技巧记录

    1.取消EditText自动获取焦点 在项目中,一进入一个页面, EditText默认就会自动获取焦点,弹出输入法界面,很不友好.那么如何取消这个默认行为呢? 解决之道:在EditText的父级控件中 ...

  6. Android技巧小结之新旧版本Notification

    最近开发用到了通知功能,但有几个地方老是提示deprecated,然后就找了篇文章学习了下新旧版本的不同. Notification即通知,用于在通知栏显示提示信息. 在较新的版本中(API leve ...

  7. Android技巧:查看当前界面对应的活动

    常常接手别人的android代码,非常头疼不知道界面所对应的活动是哪一个.下面所说的方法可以完美解决. 新建一个BaseActivity类,继承自AppCompatActivity,并重写onCrea ...

  8. Android 技巧 - Debug 判断不再用 BuildConfig

    Android 开发中一般会通过 BuildConfig.DEBUG 判断是否是 Debug 模式,从而做一些在 Debug 模式才开启的特殊操作,比如打印日志.这样好处是不用在发布前去主动修改,因为 ...

  9. android技巧(五)一个异步+接口回调的例子

    public class DataBaseUtils { // 当前数据库地址 private String DB_PATH; // 备份后数据库保存地址 private String DB_BACK ...

随机推荐

  1. IOS系列swift语言之课时四

    今天我们要讲的主要有:下标.可为空的类型.枚举(特殊的枚举:递归枚举).原生值.关联值 首先来分析一下这个下标,就是说我们可以通过下标找到对应的值或者是改变对应的值. 其次是可为空的类型,我们要牢记所 ...

  2. keepalived衡环境搭建

    环境信息 keepalived master 192.168.1.106 keepalived backup 192.168.1.103 vip 192.168.1.100 1,安装keepalive ...

  3. 三、HTTP抓包测试

    package testHTTP; import java.io.BufferedReader;import java.io.IOException;import java.io.InputStrea ...

  4. [整理]一个有关Latch(锁存器)的有趣问题

    起源 今天诳论坛,突然发现了一个有关latch的问题,由于对D Flip-Flop和Latch还有些疑问,就点击了进去,一看果然有些意思,也挺有学习意义的,于是本文就诞生了.喊出口号~Just not ...

  5. ajaxFileUpload 异步上传数据

    AjaxFileUpload.js并不是一个很出名的插件,只是别人写好的放出来供大家用,原理都是创建隐藏的表单和iframe然后用JS去提交,获得返回值. 它的配置方式比较像jQuery的AJAX,使 ...

  6. linux 开机自添加路由

    进入 vi /etc/sysconfig/network/routes Destination     Gateway            Genmask         Use Iface172. ...

  7. 04 Apache Solr: 目录结构

         通过前面的介绍,我们已经能够看到管理员界面并对Solr形成了一个感性的认识.本篇将在物理上深入了解Solr的安装目录结构和Solr示例的主目录结构.   安装目录结构 Solr 6.3.0安 ...

  8. final评论II

    1.  Nice  项目:约跑软件       在此次六个发布作品中,此作品是唯一基于Androrid开发app.并且此作品创意和实用性很高的,跑步是人们日渐热爱的一个活动,用户广泛,并且在网上沟通交 ...

  9. laravel之缓存配置文件

    清除之前配置文件缓存,并生成新的配置文件缓存, get bash: php artisan config:cache 如下图,以上命令会将config文件夹下所有的文件内容缓存到bootstrap/c ...

  10. VSS 的修复和扫描

    关闭所有连接到VSS的客户端如:VSS客户端及VS开发工具,在命令行模式下,运行这个方法: "C:\Program Files (x86)\Microsoft Visual SourceSa ...