package com.doumee.lib_coremodel.base; 
 | 
  
 | 
import android.os.Bundle; 
 | 
  
 | 
import androidx.annotation.LayoutRes; 
 | 
import androidx.annotation.Nullable; 
 | 
import androidx.lifecycle.ViewModel; 
 | 
  
 | 
/** 
 | 
 * 用来规范{@link BaseActivity} 和{@link BaseFragment} 风格。 
 | 
 * @author <a href="mailto:jenly1314@gmail.com">Jenly</a> 
 | 
 */ 
 | 
public interface IView<VM extends ViewModel> { 
 | 
  
 | 
    /** 
 | 
     * 根布局id 
 | 
     * @return 
 | 
     */ 
 | 
    @LayoutRes 
 | 
    int getLayoutId(); 
 | 
  
 | 
    /** 
 | 
     * 初始化UI 
 | 
     * @param savedInstanceState 
 | 
     */ 
 | 
    void initView(@Nullable Bundle savedInstanceState); 
 | 
  
 | 
    /** 
 | 
     * 初始化数据 
 | 
     * @param savedInstanceState 
 | 
     */ 
 | 
    void initData(@Nullable Bundle savedInstanceState); 
 | 
  
 | 
    /** 
 | 
     * 是否使用DataBinding 
 | 
     * @return 
 | 
     */ 
 | 
    boolean isBinding(); 
 | 
  
 | 
    /** 
 | 
     * 创建ViewModel 
 | 
     * @return 
 | 
     */ 
 | 
    VM createViewModel(); 
 | 
  
 | 
} 
 |