1、什么是Dip和Sp
过去,程序员经常以像素为单位设计计算机用户界面,例如,定义一个宽度为300像素的表单字段,列之间的间距为5个像素,图标大小为16x16像素等,这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面显得很小。在有些情况下,用户界面可能会小到难以看清内容。
与分辨率无关的度量单位可以解决这个问题,Android支持下列所有的单位
- px(像素):屏幕上的点
- in(英寸):长度单位
- mm(毫米):长度单位
- pt(磅):1/72英寸
- dp(与密度无关的像素):一种基于屏幕密度的抽象单位,在每英寸160点的显示器上,1dp=1px
- dip:与dp相同,多用于google示例中
- sp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放
为了使用户界面能够在现在和将来的显示器上正常显示,建议始终使用sp作为文字大小的单位,将dip作为其他元素的单位。当然,也可以考虑使用矢量图像,而不是位图
2、Dialog样式的Activity
在res/values/strings.xml中设置要显示的字符串如下:
<string name="mytext">\
dddddddddddddddddddddddddddddddddddd.
dddddddddddddddddddddddddddddddddddd.
html tag(<i>hualang</i>)
</string>
上述就是个测试,在string标签后加入反斜杠字符(\)是避免了在第一个单词的前面出现额外的空行
在注册这个Activity的时候在AndroidManifest.xml中写入如下:
<activity android:name=".Another" android:theme="@android:style/Theme.Dialog">
</activity>
运行效果如下:
3、利用日志消息调试程序
- Log.e():错误
- Log.w():警告
- Log.i():信息
- Log.d():调试
- Log.v():详细
4、利用调试器调试程序
除了日志消息以外,还可以使用eclipse调试器设置断点,单步执行以及查看程序状态。首先,通过在AndroidManifest.xml
文件中添加android:debuggable="true"选项,使项目支持调试
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:debuggable="true"
>
5、为什么有时在屏幕旋转后程序重新播放视频
默认情况下,Android假定程序对于屏幕旋转一无所知。为了处理可能的资源变化,Android销毁并从头重建你的活动。这意味着要再次调用onCreate()方法,也意味着要重新开始播放视频。
这种处理方式使用于90%的应用程序,因此大多数开发人员不必关心这一问题,对于测试应用程序的声明周期和状态保存/恢复代码,这甚至是一种有用的方法。但是,还有一些更好的办法能优化视频的转换。
最简单的办法是在活动中实现onRetainNonConfigurationInstance()方法,以保存一些对onDestroy()和onCreate(0方法的多次调用中需要保持的数据。在返回时,你可以在活动的新实例中使用getLastNonConfigurationInstance()方法恢复这些信息。可以保存任何信息,甚至包括对当前一度的引用和正在运行的线程。
更复杂的方法是在AndroidManifest.xml文件中使用adnroid:configChanges=特性,这种形式将你可以处理的变化通知Android。例如,如果将特性设为keyboardHidden|orientation,那么当用户翻转键盘时,Andorid将不会销毁和创建活动。相反,Android将调用onConfigurationChanged(Configuration)方法,并假定你知道自己如何处理。
- 大小: 24.4 KB
分享到:
相关推荐
Android-android-tips-tricks.zip,[备忘]android开发的技巧,安卓系统是谷歌在2008年设计和制造的。操作系统主要写在爪哇,C和C 的核心组件。它是在linux内核之上构建的,具有安全性优势。
Android-Studio-Tips-by-Philippe-Breault Every Android Studio Tip posted by Phillipe Breault All credits go to Philippe Breault Wiki Go to Wiki Pages to check the tips! License Copyright 2014 Philippe ...
Android-Tips This is an awesome list of tips for android. If you are a beginner, this list will be the first choice for you when you have a difficult time. Welcome Star and Fork, your support is my ...
3. Android Tipshttp://dev.classmethod.jp/smartphone/android/android-tips-51-volley/ 4. Google I/O 2013 – Android : Volley: Easy, Fast Networking for Android ...
一些很不错的Android开发技巧,这个项目翻译自 android-tips-tricks 去掉了一些我认为不重要的,对我使用过的东东做了评价,同时翻译了一些自己没有注意到的知识点的文章。 :heart: star 支持一下 欢迎协作 了解你的...
D3-Tips-and-Tricks-Latest.pdf 最新版D3.js技法与教程,使用D3引擎进行前端数据可视化,一步一步学习D3的可视化编程
所学习记录的渗透测试Tips,以及来自Tools师傅们部分Tips2021年01月28日 - 整理更新了第38~48,所学习记录的渗透测试Tips2021年01月26日 - 整理了几天来自tools师傅们的留言以及个人的渗透测试Tips2021年01月21日 - ...
汇总Kotlin相对于Java的优势,以及怎么用Kotlin去简洁、务实、高效、安全的开发,每个tip都有详细的说明和案例代码,争取把每个tip分析得清楚易懂,会不断的更新维护tips,欢迎fork进来加入我们一起来维护,有问题的...
在这个“CSV数据-Pandas-Tests-IO-Data-CSV-Tips-2024-01-09.zip”压缩包中,我们可以预见到一系列与使用Pandas处理CSV数据相关的测试和技巧。 首先,Pandas的`read_csv()`函数是读取CSV文件的主要接口。这个函数...
在此贡献中,我们报告了不同沸点和退火温度的溶剂对TIPS-并五苯晶体管性能的影响。 几种溶剂已用于TIPS-并五苯薄膜加工中:甲苯,氯苯和四氢呋喃。 研究溶剂和温度的影响; 测量了TIPS-并五苯场效应晶体管的电学参数...
Pandas-and-NumPy-Tips-Trick-and-Techniques-master
Pandas-Tips-Tricks-and-Best-Practices-main
09-seven-tips-for-mentoring-security-newbies
0001-TIPS-2020-hxp-kernel-rop : ret2user
seven-tips-for-mentoring-security-newbies.pdf
《Python库pybites_tips-1.0.0-py3-none-any.whl详解》 在编程领域,Python以其简洁、易读的语法和强大的库支持,深受开发者喜爱。而`pybites_tips-1.0.0-py3-none-any.whl`这个文件,就是Python开发中的一个重要...
tips-intellij-idea-212.40.jar
**Android代码混淆与Proguard详解** 在Android应用开发中,为了保护代码安全、减小APK体积以及提高运行效率,开发者通常会使用代码混淆工具,其中最常用的便是Proguard。Proguard是一个强大的Java字节码混淆、优化...
Swift开发者必备Tips--第四版,其中包含epub,pdf,mobi格式电子书和playground文件,本书所有示例代码都可以在https://github.com/swifter-tips/Playground查看