美文网首页
上班第六周

上班第六周

作者: 寒冬_腊月 | 来源:发表于2020-06-16 09:31 被阅读0次

任务

  1. 完成提问和运营账号主页需求

完成提问和运营账号主页需求

在公司的第一个需求,总算是提测了,自己分三点对做需求做了总结:

  1. 和产品确定需求的细节,了解整个需求过程
  2. 界面上对照设计图争取做的和设计图上的一样,公司的设计没有区别Android和iOS,有些地方实现起来还是比较麻烦,还好项目中有一些已经实现了类似功能的可以拿过来用
  3. 代码上尽量写简洁,使用Android Studio inpect code工具规范代码

获取View在屏幕中的位置

final int[] decorViewLocationInScreen=new int[2];
decorView.getLocationOnScreen(decorViewLocationInScreen);

如果是在初始化View的时候需要用到post方法

decorView.post(new Runnable() {
        @Override
        public void run() {
            final int[] decorViewLocationInScreen=new int[2];
            decorView.getLocationOnScreen(decorViewLocationInScreen);
        }
    });

这里有个问题,在真机和模块器上通过这个算出来的值,来计算实际View的高度,但是结果是差别,后面看怎么解决

代码实现样式

实现文字加粗

textview.setTypeface(textview.getTypeface(), Typeface.BOLD);

修改ImageView tint颜色

setColorFilter(Color.parseColor("#3462FF"));

SparseArray、ArrayMap用来代替HashMap

SparseArray

  1. 只能存储key为int类型的数据
  2. 避免了基本数据类型的装箱操作
  3. 不需要额外的结构体,单个元素的存储成本更低
  4. 数据量小的情况下,随机访问的效率更高

ArrayMap
该集合类型和SparseArray同样基于二分查询, 对于千以内的数据量Google推荐使用, 大量数据同样性能不佳;并且该集合类型不能解决自动装箱问题, 但是也能减少内存消耗;

adb 工具

查看包版本信息

adb shell dumpsys package packageName | grep "version"

查看当前显示的Activity所在包名和Activity路径,争对debug应用, Release失效

adb shell dumpsys activity activities | grep "mFocusedWindow" //模拟器
adb shell dumpsys activity activities | grep "ResumedActivity:" //真机

查看当前手机屏幕信息

adb shell dumpsys window | grep display

调试adb命令

adb shell am start -d your-deep-link

空格字符

发现个问题,从网上复制了一串字符,虽然已经使用了String的trim()方法,但是首字母还是有空格, 后面发现trim只能去掉英文下的空格,中文的空格是去不掉的,所以JAVA11(JDK11)中引入了strip(),用于去掉字符首尾空白是Unicode空白字符

版本api支持问题

xml布局中使用drawableTint要注意,这个只能在api 23上生效,要支持低版本的, 还是得用ImageView的 android:tint方法

layer-list中使用android:width也要注意

获取statusBar高度

private int getStatusBarHeight() {
    Resources resources = mActivity.getResources();
    int resourceId = resources.getIdentifier("status_bar_height", "dimen","android");
    int height = resources.getDimensionPixelSize(resourceId);
    return height;
}

距离传感器

距离传感器通常用于确定用户头部与手持设备屏幕表面的距离(比如,用户拨打或接听电话时脸贴近屏幕会亮等)。
大部分距离传感器返回的是绝对距离,单位是 cm,也有返回其他的,比如我手头这台华为,只返回0,5两个值。

 Sensor sensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);

小点

  1. SimpleDateFormat格式化需要添加locale
 new SimpleDateFormat("MM月dd日  mm:ss", Locale.CHINA);

  1. Glide 可以进行圆角控制,如果加载的是gif的话,就需要使用CardView

  2. 从sdk26开始,所有的视图中新增了一个android:importantForAutofill的属性来控制是否需要自动填充信息功能

  3. 使用constraintlayout中group控件可以对一组的view进行Visiable或者Gone操作

参照

SparseArray 的使用及实现原理

Android布局中的空格

Sensor(PROXIMITY)

相关文章

  • 上班第六周

    为什么开始写博客 作为一个什么也不会的伪程序员,早就看着别的大神写的博客眼馋,想自己也能搭建专属博客,记录一下无聊...

  • 上班第六周

    任务 完成提问和运营账号主页需求 完成提问和运营账号主页需求 在公司的第一个需求,总算是提测了,自己分三点对做需求...

  • 十一后的这周真累

    国庆后后的这周上班真累。 8号9号周六周日,补第六周周六和周五的课,我第六周周五刚好三次课,所以9号也就是周日那天...

  • 2019-02-11晨间日记

    今天是什么日子 今日正月初七,上班第一天,虽然我还没有上班 坚持早起第41天,第六周第六天,继续保持 起床:6:5...

  • 第六周周记

    《了凡四训》第六周周记 中正组 朱峻锋 爱国的本质就是爱自己,家是小小国,国是大大家,国庆当天我还上班,心想...

  • 效能复盘践行六:检视系统之周检视、月检视

    212班10.0践行第六周作业安排(2020.6.5~6.11) 第六周主题:检视系统之周检视、月检视 作业:完成...

  • 14.0践行第六周周检视8.1-8.7

    本周是14.0的第六周,这周忙碌的一周,给客户做理赔,带娃上班,打招聘电话。 一、家庭 1.每天保持和老爸通话一次...

  • 2019-04-17

    第六周总结 各位深爱孩子的家长: 周末愉快。 首先祝贺 第六周的“阅读王子...

  • 第六周04

    第六周04

  • 星耀小学三年三班亲子共成长

    周畅阅读第六天

网友评论

      本文标题:上班第六周

      本文链接:https://www.haomeiwen.com/subject/onklxktx.html