牢记android编程不能犯的低级错误,其他同理(持续更新)

1.举例调用一个方法时候,如果方法中的参数有控件之类的赋值时候(比如动态设置图片或文字)一定要在方法里面判断是否为空,不然极有可能出现空指针异常等。正确代码如下:

public void setToolBar(String title, ImageView imageView, TextView textView) {
    if (imageView != null) {
        imageView.setOnClickListener(v -> finish());
    }

    if (textView != null) {
        textView.setText(title);
    }
}

2.刘海屏  的适配,android6.0  7.0的适配)(6+运行时权限)(7+文件存储变更)

3.抽象类

①。定义三个类,test1,test2,test3.

②。test2是个需要实现的接口,接口里面有两个需要实现的方法hha1(),hha2()

③。test1负责实现接口test2,按照常理来说test2的两个方法都会在test1中被实现,但是有时候为了一些特殊的目的可能会让test2的一个方法在另外一个类中去实现,那么现在就用到了抽象类的概念,如果使用了抽象类,那么test1中只需要实现一个方法hha1(),另外的一个方法在其他类中实现即可。

④。test3是继承test1的一个类,继承过后,因为是抽象类,是需要实现其中的抽象方法的,所以test2的hha2(),就回在这类里面实现。

4.在刚开始学习android的时候,觉得button的点击事件很神奇很深奥,一句setOnClickListener可以做很多事情,而且还能在很多地方使用。而且源码也就那点代码,那个时候对于接口的理解还停留在用的时候,自从看了鸿洋大神的mvp设计模式,后面自己效仿反复的用了几遍过后发现,,,自己也变成了以前仰望般的存在,懂了很多,不过自我改进空间还是很大加油。2018.10.30

5.cardview不能显示阴影的时候记得在xml中加入cardUseCompatPadding,并设置为true,默认不设置,这样上中下都会有阴影了。

6.在应用的录制音频过程中,出现了播放顺序对不上,大致是读取的文件名和保存的文件名正确,但是播放出来的声音却是上一次播放的音频。后面将应用清除数据,然后通过log日志打印在保存的位置,发现第一次保存的时候保存的是空的(因为第一次点击还没开始录制前就行了一次保存操作,所以导致了第一次保存了空的内容,然后再进行读取的时候是从第二条内容开始读取,所以导致错位播放音频)。解决方法是:将第一次保存的位置更改到录制完成过后再进行保存既可解决。

7.当在使用module的时候,如果提示activity没有注册,那么就直接将该activity在app的manifests里面注册也是可以的。

发布了29 篇原创文章 · 获赞 44 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/ai1362425349/article/details/83051413