1.只保留float类型的一位小数,  String.format("%.1f", float值)
 
2.android  edittext 限制输入内容:  android:digits="0123456789"
 
3.PendingIntent可以简单地理解为延迟执行的Intent
 
4.RadioButton里面的属性android:button="@null"去掉前面的圆点
 
5.在setText()的过程中,如果出现Stirng#ID not found的错误的话,是因为传入setText()的参数不是String类型的
 
6.armeabi目录是专门用于存放so文件的地方,so文件是用C/C++语言进行编写,然后再用NDK编译出来的。
 
7.android原生状态下的工程*#*#4636#*#*  进入工程模式后,也没什么卵用
 
8.非android原生状态下,不同品牌的手机进入命令不同,在进入工程模式后,可以设置
log开关,在本地输出log
 
9.RelativeLayout 的布局特性,写在下面的控件会放在上面一层,适用于解决这样的布局问题
 
10.ListView的展开动画
      
 LayoutAnimationController lac = new LayoutAnimationController(AnimationUtils.loadAnimation(MyReportActivity. this,R.anim. zoom_in));                              
 lac.setOrder(LayoutAnimationController. ORDER_NORMAL);
                        report_list.setLayoutAnimation(lac);
                        report_list.startLayoutAnimation();
 
 
11. 注意在调用startActivityForResult()方法之前,先调用resolveActivity(),这个方法会返回能处理该Intent的第一个Activity(译注:即检查有没有能处理这个Intent的Activity)。执行这个检查非常重要,因为如果在调用startActivityForResult()时,没有应用能处理你的Intent,应用将会崩溃。所以只要返回结果不为null,使用该Intent就是安全的。
 
static final int REQUEST_IMAGE_CAPTURE = 1;

private void dispatchTakePictureIntent() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }

}
12.TextView可以通过ellipsize属性可以设置省略号的位置,start,middle,end
 
13.activity中继承baseactivity的点击事件没有反应,是因为在onclick中没有调用父类的方法
   super.onlick();
 
14.android计时器控件Chronometer,时钟AnalogClock,DigitalClock,状态开关按钮ToggleButton,单选按钮RadioButton
 
15.String.toUpperCase()这个方法是将字符串全都转化为大写
 
16.当前Activity的onPause方法执行结束后才会执行下一个Activity的onCreate方法,所以在onPause方法中不适合做耗时较长的工作,
这会影响到页面之间的跳转效率
 
17.不要通过Bundle传递大块的数据,否则会报TransactionTooLargeException:java - Issue: Passing large data to second Activity
 
18.使用Adapter的时候,如果你使用ViewHolder做缓存,在getView的方法中无论这项的每个视图是否需要设置属性(比如TextView设置的属性可能为null,item的某一个按钮的背景为透明,某一项的颜色为透明等),都需要为每一项的所有视图设置属性(TextView的属性为空也需要设置setText("")),
背景透明也需要设置),否则在滑动的过程中会出现内容的显示错乱
 
19.什么时候不能使用Application的context
 
20.使用Toast时,建议定义一个全局的Toast对象,这样可以避免连续显示Toast时不能取消上一次Toast消息的情况(如果你有连续弹出Toast的情况,避免使用Toast.makeText);
 
21.不要通过Msg传递大的对象,会导致内存问题;
 
22.Eclipse的工程转成AS的版本后,在同一个机器中安装会报”INSTALL_FAILED_VERSION_DOWNGRADE“这个错误,原因是因为as除了可以在Manifest.xml文件中设置apk的版本名和版本号,还可以在build.gradle文件中设置apk的版本名和版本号,记得修改build.gralde中的版本名和版本号到最新就可以了;
 
23.谨慎使用Android的多进程,多进程虽然能够降低主进程的内存压力,但会遇到如下问题:
(1)不能实现完全退出所有Activity的功能(如果有同行在应用内采用多进程成功实现过完全退出程序欢迎沟通交流);
(2)首次进入新启动进程的页面时会有延时的现象(有可能黑屏、白屏几秒,是白屏还是黑屏和新Activity的主题有关);
(3)应用内多进程时,新启动一个进程都会重新跑一次Application的onCreate方法,不上重新创建一个Application,但会重新跑Application的onCreate,这样就不能在Application中缓存数据作为内存共享的途径了;
(4)多进程间通过SharedPreferences共享数据时不稳定,具体可以查阅《Android开发艺术探索》。
 
24.不能在Activity没有完全显示时显示PopupWindow和Dialog
 
25. 谨慎使用Android的透明主题,透明主题会导致很多问题,比如:如果新的Activity采用了透明主题,那么当前Activity的onStop方法不会被调用;在设置为透明主题的Activity界面按Home键时,可能会导致刷屏不干净的问题;进入主题为透明主题的界面会有明显的延时感;
 
26. View的面积越大绘制的时间就越长,透明通道对View的绘制速度影响很大
 
27. Eclipse的Android开发环境配置好后不要轻易升级ADT和build tools,不然会浪费你很多时间,还有就是一个workspace中的工程不要太多,不然每次启动都会很慢;
 
28. Android studio每个版本、gradle每个版本差别都比较大(我是这样认为的),对于jni代码的编译建议在Eclipse中进行,如果在Android studio中开发jni会浪费很多时间,主要是编译脚本的配置比较麻烦
 
29.Volley比较适合数据量不大但是通信频繁的场景。它当初的设计目标就是非常适合去进行数据量不大,但是网络通信比较频繁的操作。但是如果数据量很大的网络例如:文件下载这类的,Volley框架的效率就会比较差了。
 
30.

<activity
    android:name=".act.ActLogin"
    android:screenOrientation="portrait"

    android:windowSoftInputMode="adjustUnspecified|stateHidden" />
 
31.handler如果是在主线程中创建的,handler执行的内容还是在主线程
32. sqlite中的replace语句表示如果存在就update,不存在就insert
33.

让TextView滑动
 
1.在xml布局文件中,加上这一句 android:scrollbars = "vertical"
 
2.再在代码中加上,yourTextView.setMovementMethod(new ScrollingMovementMethod())
 
34.
Android中Activity的四种启动方式:
 
1.standard
               每启动一个新的Activity,它就会在返回栈中入栈,并出入栈顶的位置.
               对于使用standard启动的Activity,系统不会在乎这个Activity是否已经在返回栈中存在
 
2.singleTop
               在启动Activity时如果发现返回栈的栈顶已经是该活动,则认为可以直接使用它,不会再创建新的活动实例
 
3.singleTask
               每次启动一个Activity时系统会首先在返回栈中检查是否存在该活动的实例,如果发现已经存在则直接使用该实例
               并且把在这个Activity之上的所有Activity统统出栈
               如果没有发现就会创建一个新的Activity实例
 
4.singleInstance
               当Activity的启动模式为singleInstance时,系统会启用一个新的返回栈来管理这个活动
 
35.有关adpter中异步设定imagview图片混乱的问题
if (convertView == null) {
convertView = inflater.inflate(R.layout.login_identity_grid_item, null);
mViewHolder = new ViewHolder();
convertView.setTag(mViewHolder);
}
final ViewHolder mViewHolder = (ViewHolder) convertView.getTag();
 
36.延时操作
 

Android-小tips的更多相关文章

  1. Android Studio tips and tricks 翻译学习

    Android Studio tips and tricks 翻译 这里是原文的链接. 正文: 如果你对Android Studio和IntelliJ不熟悉,本页提供了一些建议,让你可以从最常见的任务 ...

  2. 小tips: zoom和transform:scale的区别

    小tips: zoom和transform:scale的区别 转自 张鑫旭 前端大神 by zhangxinxu from http://www.zhangxinxu.com本文地址:http://w ...

  3. HTML meta锚点跳转 小tips

    小tips meta锚点跳转 http://www.zhangxinxu.com/wordpress/2015/03/meta-http-equiv-refresh-content/

  4. [Xamarin.Android] ActionBar Tips

    [Xamarin.Android] ActionBar Tips ActionBar用途 快速搞懂 ActionBar的用途,可以参考下列文章: [Android]使用 ActionBarCompat ...

  5. [Xamarin.Android] Fragment Tips

    [Xamarin.Android] Fragment Tips Fragment用途 快速搞懂 Fragment的用途,可以参考下列文章: Android Fragment 使用心得 Android ...

  6. 一个简单的Android小实例

    原文:一个简单的Android小实例 一.配置环境 1.下载intellij idea15 2.安装Android SDK,通过Android SDK管理器安装或卸载Android平台   3.安装J ...

  7. android小程序之幸运菜谱

    android小程序之幸运菜谱 前言:刚刚结束短短5天的android公开课程,收获不少,写下来记录一下吧!(因为学校校企公开课的缘故才偶然接触的android,所以只学了这几天,不喜勿喷) 一开始得 ...

  8. Windows7驱动调试小Tips

    v:* { } o:* { } w:* { } .shape { }p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-botto ...

  9. 你不知道的JavaScript--Item17 循环与prototype最后的几点小tips

    1.优先使用数组而不是Object类型来表示有顺序的集合 ECMAScript标准并没有规定对JavaScript的Object类型中的属性的存储顺序. 但是在使用for..in循环对Object中的 ...

  10. 小tips:JS之浅拷贝与深拷贝

    浅拷贝: function extendCopy(p) { var c = {}; for (var i in p) { c[i] = p[i]; } return c; } 深拷贝: functio ...

随机推荐

  1. Father Christmas flymouse--POJ3160Tarjan

    Father Christmas flymouse Time Limit: 1000MS Memory Limit: 131072K Description After retirement as c ...

  2. 函数动态参数实现format

    变量赋值一种是字符串格式化,一种是通过format的方式 1.字符串格式化 s="i am %s,age %d"%('Jasper',23)print(s) 打印输出:i am J ...

  3. ubuntu安装

    今天在win10下安装Ubuntu,结果没经验导致win10找不回来了,我再好好整理些思路 安装前要做一个ghost,万一出现问题可以用来恢复系统! 1,我使用USB Installer 在http: ...

  4. SQL-Server使用点滴(一)

    前言 SQL的语法比较简单,学起来相比界面UI控制要简单得多,但是SQL在企业级应用中又是如此的重要,以至于很多开发人员都把重点放在SQL上. SQL并没有面向对象的概念,最复杂的设计也不过是表值函数 ...

  5. javaScript 验证表单提交

    <script type="text/javascript">      function $(id) {          return document.getEl ...

  6. quantile normalization原理

    对于芯片或者其它表达数据来说,最常见的莫过于quantile normalization啦. 那么它到底对我们的表达数据做了什么呢?首先要么要清楚一个概念,表达矩阵的每一列都是一个样本,每一行都是一个 ...

  7. PCA9554

    参考资料: 1. Texas Instruments PCA9554简介 2. PCA9554文档下载 3. PCA9554 Data Sheet 知识点: ● PCA9554是具有中断输出和配置寄存 ...

  8. Word,PDF,PPT,TXT之间的转换方法

    来源: 刘波的日志 一.把PPT转WORD形式的方法 1.利用"大纲"视图 打开PPT演示文稿,单击"大纲",在左侧"幻灯片/大纲”任务窗格的“大纲” ...

  9. 《构建之法》8&16

    [8.1] 对产品的生命周期管理好像一直以来都没有引起我足够的重视,在这一段对产品学习的过程中也少有看到相关内容.是因为针对不同产品而言,产品周期的管理太具有个性特征,没有太统一的规则可循吗?我觉得不 ...

  10. Chrome谷歌浏览器下不支持css字体小于12px的解决办法

    先来看下 ie.火狐.谷歌浏览器下各个字体显示情况 ie下: 火狐下: 谷歌下: 从上面的图可以很明显看出谷歌下 css设置字体大小为12px及以下时,显示都是一样大小,都是默认12px; 那么网上一 ...