LZ-Says:要的,始终给不了,是我太过于愚笨,还是我始终没有那个能力给你想要的?

前言

撸码,本质还是思维方式,虽不能一时间改变,但却可以通过时间的积累,达到一个厚积薄发。

那么,本篇,将记录 LZ 开发过程中觉得不错的小方式、小技巧。

期待,未来越来越好的自己。

前方高能,请记好安全带。

LZ 投个懒,依次按照顺序记录把~

1. 巧用 &#160 ; (使用时删除中间空格)

话说某天老大说,用户切换到英文语言下,某个提示中间加个空格。

LZ 一想直接 string.xml 敲个空格不就好了吗?然而卵,然后 LZ 通过判断当前语言环境动态设置空格,原以为很完美,But,明远小哥哥微微一笑,说我改了,你有时间把你那里删了吧。LZ 一瞧,TMD 什么鬼?

string.xml 这么写:
<string name="no_read_count">%1$s messages</string>
引用时,这么玩:
mTvTest.setText(getString(R.string.no_read_count,10));

效果嘛,如下:

简单、实用,方便、快捷。

2. 粗暴多用 TextView

TextView,作为几乎项目必备且出场率达到百分之九十九的一个最佳辅助没有之一,那么,有关它,又有什么粗暴方式?一起拭目以待。

首先,我们来看下面这种效果:

Long Long Ago,我们是直接使用俩个 TextView 实现,如今,我们只需要一个,粗暴的实现,方案如下:

String hintStr = "<html><body><font color='#000'>当前搜索条件:</font><font color='#fc8549'>heliquan</font></body></html>";
mTvTest.setText(Html.fromHtml(hintStr));

就问你粗暴不粗暴,感谢我大芬儿

3. 校验是否为汉字

public boolean isChinese(String str) {String regEx = "[\u4e00-\u9fa5]";Pattern pat = Pattern.compile(regEx);Matcher matcher = pat.matcher(str);boolean flg = false;if (matcher.find())flg = true;return flg;
}

4. 获取 URL 中 host

try {mHostPath = new URL(url).getHost();
} catch (MalformedURLException e) {e.printStackTrace();
}

PS:URL 隶属于 java 包下。

5. Android + EditText + FragmentDialog + 软键盘自动弹出

contentView.requestFocus();
mDialogFragment.getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

6. 软键盘隐藏

private void requestInputMethod() {InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}

7. list 去重 但是会根据字母排序

mSearchHistoryList = new ArrayList<>(new TreeSet<>(mSearchHistoryList));

8. List 去重 排序 保持数据原有状态

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {mSearchHistoryList = mSearchHistoryList.stream().distinct().collect(Collectors.toList());
} else {mSearchHistoryList = removeStringListDupli(mSearchHistoryList);
}// 去重 保持原有状态
public List<String> removeStringListDupli(List<String> stringList) {Set<String> set = new LinkedHashSet<>();set.addAll(stringList);stringList.clear();stringList.addAll(set);return stringList;
}

9. 金额三位一逗号

DecimalFormat("#,###").format(mHomeDetailBean!!.getPrice()!!.month!!.toDouble())

10. Kotlin 定时搞事情

Handler().postDelayed({ finish() },1500)

个人公众号

不定期发布博文,最近有点忙,感谢老铁理解,欢迎关注~

技巧篇 之 Just do it (这将会是一个漫长的历程。。。)相关推荐

  1. 计算机启用时间 查找方式,电脑实用知识技巧 篇六:不需要第三方软件,这种方法查看系统启动时间...

    电脑实用知识技巧 篇六:不需要第三方软件,这种方法查看系统启动时间 2019-04-04 09:19:21 0点赞 0收藏 0评论 上次我们说到:开机小助手,要让我们看到开机时间,必须添加自启动项目, ...

  2. [转载]潜移默化学会WPF(技巧篇)--具有Items元素的控件子项获取(一)

    潜移默化学会WPF(技巧篇)--具有Items元素的控件子项获取(一) 1. treeview的Item获取 var g = this.tree.ItemContainerGenerator;Tree ...

  3. 经典SQL语句大全(技巧篇)

    技巧篇 1.1=1,1=2的使用,在SQL语句组合时用的较多 "where 1=1" 是表示选择全部 "where 1=2"全部不选, 如: if @strWh ...

  4. (2021年)IT技术分享社区个人文章汇总(电脑技巧篇)

    2021年即将成为过去,崭新的2022年即将到来,小编坚持每天给大家分享IT技术相关的文章,希望小编分享的文章能够给大家在日常的工作当中,带来一点帮助.也感谢大家对本公众号的支持,未来我会坚持创作,给 ...

  5. psd文件超大?教你如何压! - 技巧篇

    psd文件内存太大,打开太卡顿,教你如何压! 很多你不知道的PS技巧! 解决办法: 高效压缩! 有时候,几百兆的文件,能直接给你压缩到100M以内(源文件300M). 免费查看 · 资源地址: 参考技 ...

  6. PS如何生成svg代码格式的path路径 - PS技巧篇

    PS如何生成svg代码格式的path路径 - PS技巧篇 原文标题:PS中的svg工具是怎么使用的 点击查看:百度教程 技巧,切图出来的小图片,可以通过ps打开,右键生成SVG格式的代码. 以上就是关 ...

  7. 小帅小胖智能机器人如何使用_小帅智能教育机器人使用技巧篇(下篇)

    原标题:小帅智能教育机器人使用技巧篇(下篇) 主持人:早上起得晚,可不可以不刷牙啊? 小帅:你不刷牙嘴巴臭臭的,我只能捂着鼻子跟你说话了. 主持人:今天邻居欺负我.我该怎么办? 小帅:君子动口不动手, ...

  8. Blend_技巧篇_淡入淡出

    Blend_技巧篇_淡入淡出 原文:Blend_技巧篇_淡入淡出 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010265681/article ...

  9. 神经网络技巧篇之寻找最优超参数

    在神经网络中,除了权重和偏置等参数外,超参数也是一个很常见且重要的参数,这里的超参数是指,比如各层的神经元数量.batch大小.参数更新时的学习率或权值衰减等,如果这些超参数没有设置一个合适的值,模型 ...

  10. Git使用方法(三)-小技巧篇

    Git使用方法(三)-小技巧篇 标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本. 创建标签 命令git tag <tagname>用 ...

最新文章

  1. sublime Text 开发工具
  2. BZOJ1391: [Ceoi2008]order
  3. 在Centos8 中使用Stratis管理本地存储(一)
  4. 动态取得当前程序的版本号
  5. NOI Day1线上同步赛梦游记
  6. scrollLeft,scrollWidth,clientWidth,offsetWidth之完全详解
  7. 阿里巴巴开发规范集合处理
  8. 河内之塔算法_如何解决河内问题之塔-图解算法指南
  9. Bokeh 借力其他库
  10. android蓝牙历史
  11. 程序员谨防加班猝死之十大建议(转)
  12. ValueError: Expected 2D array, got 1D array Reshape your data either using array.reshape(-1, 1)
  13. android sqlite SQLiteDatabase 操作大全 不看后悔!必收藏!看后精通SQLITE (第三部分,完整代码)
  14. 电脑计算机稳定删除垃圾游戏,电脑卡怎么办简单步骤_如何清理电脑垃圾
  15. Win11磁盘清理在哪打开?
  16. uWSGI +Flask+torch Cannot re-initialize CUDA in forked subprocess
  17. 使用VS2017生成的动态库时出现__acrt_iob_func链接错误
  18. [转] 给土鳖装上鹰的翅膀和眼睛后会怎么样?
  19. windows server2008 设置允许特定端口通过防火墙
  20. 32探索性数据分析-足球赛事数据集(含数据)

热门文章

  1. 新型穿墙监控雷达Range-R:让你的隐私无所遁形(转)
  2. SpaceSyntax【空间句法】之DepthMapX学习:第三篇 软件介绍与一般分析流程图
  3. php如何放照片,怎样在图片上加上自己的照片 在图片方框中嵌入另一张照片显示...
  4. Helmetphone智能头盔上手体验,享受智能的运动骑行
  5. 初见NVelocity模板引擎
  6. 【kubernetes/k8s源码分析】calico node felix源码分析之一
  7. CA数字证书是什么意思?SSL证书与CA数字证书有什么区别?
  8. 三国志战略版:今天你打铁了吗?货布商店大解析
  9. LeetCode——1900. 最佳运动员的比拼回合(The Earliest and Latest Rounds Where Players Compete)[困难]——分析及代码(Java)
  10. 激光振镜误差校正算法C语言,一种基于双线性插值法的激光振镜图形校正算法的制作方法...