本博文主要记录Android开发中常用但是并不是常能记住的一些知识点,本文长期更新
9.png的知识
上方和左方黑线是控制拉伸范围的,左方和下方控制内容位置,当前可以不用设置左方和下方黑线,默认为上方和左方对应
判断字符串为null或者空字符串
以前使用
if(str == null || str.str.isEmpty())
```或者其他第三方工具类来判断字符串是否为空,但是Android自己早就封装了一个
``` java
TextUtils.isEmpty(str)
来判断字符串是否为null或空字符串。
计算文件大小
android.text.format.Formatter类中formatFileSize(Context, long)方法,用来格式化文件Size(B → KB → MB → GB)
模拟按钮的点击
view对象调用callOnClick(),performClick(),用于触发View的点击事件;performLongClick(),触发长按事件
显示密码
针对TextView(EditText是TextView子类)显示密码,通过setTransformationMethod方法可以显示
text.setTransformationMethod(new TransformationMethod() {
@Override
public void onFocusChanged(View view, CharSequence sourceText, boolean focused, int direction,
Rect previouslyFocusedRect) {
}
@Override
public CharSequence getTransformation(CharSequence source, View view) {
return source;
}
});
设置ListView和GridView快速滑动块是否可见
快速滑动块不同于滚动条,并不是滑动就会显示的,通过调用setFastScrollEnabled(boolean)来设置是否启用,前提是有足够的item来支持快速滑动
发送应用内广播
很多时候,广播并不想被其他程序收到,可以通过LocalBroadcastManager发送应用内广播
获取默认缓存路径
Context.getCacheDir();
获取缓存数据文件夹的路径,很简单但是知道的人不多,这个路径通常在SD卡上(这里的SD卡指的是广义上的SD卡,包括外部存储和内部存储)Adnroid/data/您的应用程序包名/cache/ 下面.测试的时候,可以去这里面看是否缓存成功.缓存在这里的好处是:不用自己再去手动创建文件夹,不用担心用户把自己创建的文件夹删掉,在应用程序卸载的时候,这里会被清空,使用第三方的清理工具的时候,这里也会被清空。
时间格式化
DateUtils.formatDateTime() 用来进行区域格式化工作,输出格式化和本地化的时间或者日期
Dialog去除默认背景(主要是黑框和标题栏)
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item><!--边框-->
<item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
<item name="android:windowIsTranslucent">false</item><!--半透明-->
<item name="android:windowNoTitle">true</item><!--无标题-->
<item name="android:windowBackground">@color/transparent</item><!--背景透明-->
<item name="android:backgroundDimEnabled">true</item><!--模糊-->
</style>
通过以上主题,Dialog会没有自带的一些东西
DialogFragment去除默认边框和标题栏
在onCreate方法中调用
setStyle(DialogFragment.STYLE_NO_FRAME, 0);
可以去除默认的边框和标题栏
double 保留2位小数以及添加千分号
private DecimalFormat df1 = new DecimalFormat("###,###.00");