Rxjava操作符:第1篇 Creating Observables

本文基于Rxjava 2.x版本,介绍用于创建 Observable 对象的操作符。

Operators that originate new Observables.

  • Create — create an Observable from scratch by calling observer methods programmatically
  • Defer — do not create the Observable until the observer subscribes, and create a fresh Observable for each observer
  • Empty/Never/Throw — create Observables that have very precise and limited behavior
  • From — convert some other object or data structure into an Observable
  • Interval — create an Observable that emits a sequence of integers spaced by a particular time interval
  • Just — convert an object or a set of objects into an Observable that emits that or those objects
  • Range — create an Observable that emits a range of sequential integers
  • Repeat — create an Observable that emits a particular item or sequence of items repeatedly
  • Start — create an Observable that emits the return value of a function
  • Timer — create an Observable that emits a single item after a given delay

Android设置全屏及沉浸式布局

下述代码根据 AppCompatActivity 及主题 parent="Theme.AppCompat.NoActionBar"midSdk 21实现。

对于非刘海屏幕而言有两种方式设置全屏

  1. 代码中设定,需要写在 setContentView() 之前:

    1
    2
    3
    4
    5
    6
    // 隐藏标题
    //requestWindowFeature(Window.FEATURE_NO_TITLE);
    // 设置全屏
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN)
    //或者是通过设置DecorView#setSystemUiVisibility(int)
    //getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN)

    需要说明一点 requestWindowFeature() 方法是指定主题为 parent="android:Theme.Black"之类的Activity 时隐藏老式 ActionBar 标题栏内容。对于继承 AppCompatActivity 这个方法无效。如果继承 AppCompatActivity 的 Activity 需要隐藏标题栏,可以通过以下方法:

Dagger2使用详解

注解分类:@Inject、@Module、@Provides、@Component、@Qualifier、@Scope、@Singleten。

Android触摸事件传递机制

触摸事件的类型

触摸事件对应的是Android中的MotionEvent类,主要分为三种

  • ACTION_DOWN:用户按下屏幕触发
  • ACTION_MOVE: 用户手指在屏幕移动一定距离
  • ACTION_UP:用户抬起手指,一般代表整个触发事件结束

Android单元测试框架

建议各类测试所占比例如下:小型测试(单元测试)占 70%,中型测试(集成测试)占 20%,大型(端到端)测试占 10%。

Android冷热启动优化

1、冷启动与热启动简介

冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动。

热启动:当启动应用时,后台已有该应用的进程(例:按back键、home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看),所以在已有进程的情况下,这种启动会从已有的进程中来启动应用,这个方式叫热启动。

Android部分-13:WebView

1.WebView是什么?

WebViewSetting、WebViewClient、WebViewChromeClient。

Android部分-12:图片编程

1.你对Bitmap了解吗?它在内存中如何存在?

Bitmap位图包括像素以及长、宽、颜色等描述信息。长宽和像素位数是用来描述图片的,可以通过这些信息可以计算图片所占内存大小。位图可以理解为一个画架,把图放在上面然后可以对图片做一系列的处理。位图文件图像显示效果好,但是非压缩格式,需要占用较大的内存空间。

Android部分-11:ListView和RecyclerView

1.ListView是什么?如何使用?

注意ViewHolder复用机制。

Android部分-10:文件存储

1.说说Android中数据持久化的方式 & 使用场景。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×