`

【转】Android开发中,有哪些让你觉得相见恨晚的方法、类或接口?

阅读更多

 
1、Throwable类中的getStackTrace()方法,根据这个方法可以得到函数的逐层调用地址,其返回值为StackTraceElement[];

2、StackTraceElement类,其中四个方法getClassName(),getFileName(),getLineNumber(),getMethodName()在调试程序打印Log时非常有用;

3、UncaughtExceptionHandler接口,再好的代码异常难免,利用此接口可以处理未捕获的异常;
使用参见:Android使用UncaughtExceptionHandler捕获全局异常

4、Resources类中的getIdentifier(name, defType, defPackage)方法,根据资源名称获取其ID,做UI时经常用到;

5、View中的isShown()方法,以前都是用view.getVisibility() == View.VISIBLE来判断的(╯□╰);

6、Arrays类中的asList(T... array)方法,数组转List集合;反过来List.toArray()

7、android.text.format.Formatter类中formatFileSize(Context, long)方法,用来格式化文件Size(B → KB → MB → GB);

8、android.media.ThumbnailUtils类,用来获取媒体(图片、视频)缩略图;

9、String类中的format(String, Object...)方法,用来格式化strings.xml中的字符串(多谢 @droider An 提示:Context类中getString(int, Object... )方法用起来更加方便);

10、View类中的三个方法:callOnClick()performClick()performLongClick(),用于触发View的点击事件;

11、TextUtils类中的isEmpty(String)方法,判断字符串是否为null或"";

12、TextView类中的append(String)方法,添加文本;

13、View类中的getDrawingCache()等一系列方法,目前只知道可以用来截图;

14、DecimalFormat类,用于字串格式化包括指定位数、百分数、科学计数法等;

15、System类中的arraycopy(src, srcPos, dest, destPos, length)方法,用来copy数组;

16、Fragment类中的onHiddenChanged(boolean)方法,使用FragmentTransaction中的hide(),show()时貌似Fragment的其它生命周期方法都不会被调用,太坑爹!

17、Activity类中的onWindowFocusChanged(boolean)方法;

18、View类中的getLocationInWindow(int[])方法和getLocationOnScreen(int[])方法,获取View在窗口/屏幕中的位置;

19、TextView类中的setTransformationMethod(TransformationMethod)方法,可用来实现“显示密码”功能;

20、TextWatcher接口,用来监听文本输入框内容的改变;

21、View类中的setSelected(boolean)方法结合android:state_selected=""用来实现图片选中效果;

22、Surface设置透明:SurfaceView.setZOrderOnTop(true);
SurfaceView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
但是会挡住其它控件;

23、ListView或GridView类中的setFastScrollEnabled(boolean)方法,用来设置快速滚动滑块是否可见,当然前提是item够多;

24、PageTransformer接口,用来自定义ViewPager页面切换动画,用setPageTransformer(boolean, PageTransformer)方法来进行设置;

25、apache提供的一系列jar包:commons-lang.jarcommons-collections.jarcommons-beanutils.jar等,里面很多方法可能是你曾经用几十几百行代码实现过的,但是执行效率或许要差很多,比如:ArrayUtils,StringUtils……;

26、AndroidTestCase类,Android单元测试;

27、Activity类中的onNewIntent(intent)方法;

28、TextView类的setKeyListener(KeyListener)方法;
其中DigitsKeyListener类,使用getInstance(String accepted)方法即可指定EditText可输入字符集。
 
29、getParent().requestDisallowInterceptTouchEvent(true);剥夺父view对touch事件的处理权,谁用谁知道。
30、Activity.startActivities() 常用于在应用程序中间启动其他的Activity。
31、
  • 清除画布上的内容:canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);
  • 在自定义View的onDetachedFromWindow方法中清理与View相关的资源;
  • Fragment在onAttach方法中接收回调:

32、android:animateLayoutChanges

      一直以为 Lollipop Dialer 接通画面里面那些酷炫的动画(文字部分)是很复杂的做出来的,后来发现其实只有一行。视频 演示:https://dl.pushbulletusercontent.com/N75Bx03taJzFVjjLkMpzzyqGKT8m5PpH/cm_trltexxLMY48Gyilun07312015153119.mp4

只需要加好 android:animateLayoutChanges="true" 然后 setVisibility 就可以了

 

33、(1)通过 WindowManager.addView 在其他app界面添加一个view时,经常会无法显示,特别在miui,emui固件上,需要指定type为LayoutParams.TYPE_TOAST。

       (2)View.getLocationOnScreen(new int[]),获取view在屏幕上的位置
分享到:
评论

相关推荐

    Android 高仿QQ 沉浸式状态栏

    接下来我就给大家介绍怎样快速打造沉浸式状态栏吧,虽然感觉有点相见恨晚,但其实不完! 一:何为沉浸式状态栏? 沉浸式状态栏是Google从Android 4.4开始,给我们开发者提供的一套能透明的系统ui样式,这样样式是给...

    相见恨晚经典话语.docx

    "相见恨晚经典话语" 本文涵盖了十五个经典的相见恨晚话语,每一个话语都包含了深刻的哲理和人生经验。这些话语涵盖了人生的多个方面,如友谊、爱情、人际关系、自我成长等。 1. 《用人之道》:高人的面子,发挥...

    50个相见恨晚的CAD技巧总结

    标题:50个相见恨晚的CAD技巧总结 描述:在现代工程设计领域,CAD(计算机辅助设计)软件是设计人员不可或缺的工具之一。随着技术的不断发展,掌握一系列高效的CAD技巧能够显著提升工作效率,减少设计过程中的不便...

    让你相见恨晚的十个Python骚操作

    Python 的代码之所以这么优雅,完全归功于其独有的特性,只要你掌握了这些特性,同样可以写出像诗一样的代码。 下面我们就一起看看 Python 中的骚操作。 0x00 Hello World 对于大部分程序员来说,第一个程序应该都...

    2009-相见恨晚的30句话-@Lonely Fish.zip

    标题“2009-相见恨晚的30句话-@Lonely Fish.zip”和描述“2009-相见恨晚的30句话-@Lonely Fish”看似与IT行业知识关联不大,但我们可以从这个标题中推测这可能是一个包含了一些人生感悟或者智慧格言的资料包。...

    手工清理病毒(偶之遇,相见恨晚之感,亦有受益匪浅)

    当大家看到这个题目的时候...笔者写这个文章的目的就是让所有菜鸟在面对病毒的时候能轻而易举的狙杀掉它,而不是重装系统,或者在重装N次系统以后无奈的选择格式化,结果却依然无法将讨厌的病毒驱逐出你可怜的电脑。

    一些相见恨晚的 JavaScript 技巧

    ES6的解构赋值允许你从对象或数组中提取值并直接赋给变量,如`var {name: bandName, year: releaseYear} = band;`,这在处理复杂数据结构时非常有用。 通过掌握这些JavaScript技巧,你可以写出更高效、更简洁的...

    亲爱的界面 让用户乐于使用、爱不释手.zip

    内容提要: 这本书对软件用户体验设计全过程进行了百科全书式的描述,有最新最好的实践案例、内容翔实的设计方法。相见恨晚啊!——凯斯?朗,Skitch公司COO和交互设计师写可用性话题很难摆脱过分学院派的缺点,但...

    读书笔记:记录一些看到过的相见恨晚的技术文章, 收录原则 通俗易懂, 详细..zip

    读书笔记:记录一些看到过的相见恨晚的技术文章, 收录原则 通俗易懂, 详细.

    60 个相见恨晚的神器工具!.zip

    计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料计算机技术、IT咨询、人工智能AI理论介绍,学习参考资料计算机技术、IT咨询、人工智能AI理论介绍,学习...

    导游带团脑筋急转多篇弯题目大全及答案大全.pdf

    在导游带领团队游览时,这类活动有助于增强团队凝聚力,让游客在轻松愉快的氛围中体验中国文化。 在导游带团时,脑筋急转弯可以作为一种娱乐方式,激发游客的参与热情,同时也可以锻炼大家的思维能力和反应速度。...

    Django JavaScript AJAX and jQuery使用教程

    在描述中,读者表达了对这本书的高度评价,称其为“好书”,并提到书籍来自国外作者,给读者带来了很多收获,并有一种“相见恨晚”的感觉。这表明该书内容质量高,深受读者喜欢,特别是对于希望在Django中使用AJAX和...

    系统增强文件管理器 Total Commander 9.51 + x64 Final 中文.zip

    在接触、了解这个完美的工具后,相信你会和我一样有相见恨晚的感觉。 Total Commander 的最大特点是由两个列表窗口组成,这种设计避免了 Windows资 源管理器目录树在文件操作的一系列弊端: 首先,资源管理器在选择...

    idea zookeeper插件

    描述中的“相见恨晚”表达了用户对这款插件的高度评价,暗示它提供了极大的便利性,可能包括快速的Zookeeper节点浏览、操作、调试等功能,使得开发者在使用Zookeeper时能有更高的效率。 **Zookeeper插件的主要功能*...

    Total commander 7.02a

    在接触、了解这个完美的工具后,相信你会和我一样有相见恨晚的感觉。  Total Commander的最大特点是由两个列表窗口组成,这种设计避免了windows资源治理器目录树在文件操作的一系列弊端:  首先,资源治理器在...

    Windows笔记资料

    抛弃光驱,让你的U盘变光驱,制作USB-CDROM,用U盘安装系统.doc; 实物讲解如何配置无线路由和网卡.doc; 无线网卡链接无线路由组网设置详解.doc; 新手之蓝牙适配器使用方法.doc; 一步一步教你如何修改Logonui.doc...

    C++矩阵库 Eigen 快速入门

    的问题是之前一直用 Matlab,对 Eigen 的 API 接口不太熟悉,如果能有 Eigen 和 Matlab 对应的说明想必是极好的,终于功夫不负有心人,让我找到了,原文在这里,不过排版有些混乱,我将其重新整理了一下,方便日后...

    Total Commander 文件管理工具

    在接触、了解这个完美的工具后,相信你会和我一样有相见恨晚的感觉。  Total Commander 的最大特点是由两个列表窗口组成,这种设计避免了 Windows资 源管理器目录树在文件操作的一系列弊端:  首先,资源管理器...

Global site tag (gtag.js) - Google Analytics