BaseDialogFragment

abstract class BaseDialogFragment<VM : BaseViewModel, VDB : ViewDataBinding> : DialogFragment, IView<VM> , CombinedController

MVVMFrame 框架基于 Google 官方的 JetPack 构建,在使用 MVVMFrame 时,需遵循一些规范:

如果您继承使用了 BaseDialogFragment 或其子类,你需要参照如下方式添加 @AndroidEntryPoint 注解标记,来进行注入

// 示例
@AndroidEntryPoint
class YourFragment: BaseDialogFragment() {

}

Author

Jenly

Follow me

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
val activity: @Nullable FragmentActivity?
Link copied to clipboard
var arguments: @Nullable Bundle?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open val context: @Nullable Context?
Link copied to clipboard
open val dialog: @Nullable Dialog?
Link copied to clipboard
open var enterTransition: @Nullable Any?
Link copied to clipboard
open var exitTransition: @Nullable Any?
Link copied to clipboard
Link copied to clipboard
val host: @Nullable Any?
Link copied to clipboard
val id: Int
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open val lifecycle: @NonNull Lifecycle
Link copied to clipboard
open val loaderManager: @NonNull LoaderManager
Link copied to clipboard
Link copied to clipboard
val parentFragment: @Nullable Fragment?
Link copied to clipboard
Link copied to clipboard
open var reenterTransition: @Nullable Any?
Link copied to clipboard
val resources: @NonNull Resources
Link copied to clipboard
Link copied to clipboard
open var returnTransition: @Nullable Any?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open var sharedElementEnterTransition: @Nullable Any?
Link copied to clipboard
open var sharedElementReturnTransition: @Nullable Any?
Link copied to clipboard
Link copied to clipboard
val tag: @Nullable String?
Link copied to clipboard
val targetFragment: @Nullable Fragment?
Link copied to clipboard
Link copied to clipboard
open val theme: Int
Link copied to clipboard
Link copied to clipboard
open val view: @Nullable View?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
lateinit var viewModel: VM
Link copied to clipboard
open val viewModelStore: @NonNull ViewModelStore

Functions

Link copied to clipboard
Link copied to clipboard
open fun createRootView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View

创建 rootView

Link copied to clipboard
open override fun createViewModel(): VM

创建ViewModel

Link copied to clipboard
open fun dismiss()
Link copied to clipboard
Link copied to clipboard
open override fun dismissDialog()
open override fun dismissDialog(dialog: Dialog?)

关闭对话框

Link copied to clipboard
Link copied to clipboard
open override fun dismissProgressDialog()

关闭进度对话框

Link copied to clipboard
open fun dump(prefix: @NonNull String, fd: @Nullable FileDescriptor?, writer: @NonNull PrintWriter, args: @Nullable Array<out String?>??)
Link copied to clipboard
fun <T : View> findViewById(@IdRes id: Int): T?
Link copied to clipboard
fun finish()
Link copied to clipboard
abstract fun getLayoutId(): Int

获取根布局ID

Link copied to clipboard
fun getString(@StringRes resId: Int): @NonNull String
fun getString(@StringRes resId: Int, vararg formatArgs: Any?): @NonNull String
Link copied to clipboard
fun getText(@StringRes resId: Int): @NonNull CharSequence
Link copied to clipboard
open override fun hideLoading()

隐藏加载中

Link copied to clipboard
abstract fun initData(savedInstanceState: Bundle?)

初始化数据

Link copied to clipboard
open override fun isBinding(): Boolean

是否使用 ViewDataBinding;默认为:true

Link copied to clipboard

获取Activity持有的ViewModel

Link copied to clipboard
fun <T : ViewModel> obtainViewModel(vmClass: Class<T>): T

获取ViewModel

Link copied to clipboard
open fun onActivityCreated(savedInstanceState: @Nullable Bundle?)
Link copied to clipboard
open fun onActivityResult(requestCode: Int, resultCode: Int, data: @Nullable Intent?)
Link copied to clipboard
open fun onAttach(activity: @NonNull Activity)
open fun onAttach(context: @NonNull Context)
Link copied to clipboard
open fun onAttachFragment(childFragment: @NonNull Fragment)
Link copied to clipboard
open fun onCancel(dialog: @NonNull DialogInterface)
Link copied to clipboard
open fun onConfigurationChanged(newConfig: @NonNull Configuration)
Link copied to clipboard
Link copied to clipboard
open fun onCreate(savedInstanceState: @Nullable Bundle?)
Link copied to clipboard
open fun onCreateAnimation(transit: Int, enter: Boolean, nextAnim: Int): @Nullable Animation?
Link copied to clipboard
open fun onCreateAnimator(transit: Int, enter: Boolean, nextAnim: Int): @Nullable Animator?
Link copied to clipboard
open fun onCreateContextMenu(menu: @NonNull ContextMenu, v: @NonNull View, menuInfo: @Nullable ContextMenu.ContextMenuInfo?)
Link copied to clipboard
open fun onCreateDialog(savedInstanceState: @Nullable Bundle?): @NonNull Dialog
Link copied to clipboard
open fun onCreateOptionsMenu(menu: @NonNull Menu, inflater: @NonNull MenuInflater)
Link copied to clipboard
open override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View?
Link copied to clipboard
open override fun onDestroy()
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun onDetach()
Link copied to clipboard
open fun onDismiss(dialog: @NonNull DialogInterface)
Link copied to clipboard
open fun onGetLayoutInflater(savedInstanceState: @Nullable Bundle?): @NonNull LayoutInflater
Link copied to clipboard
Link copied to clipboard
open fun onInflate(activity: @NonNull Activity, attrs: @NonNull AttributeSet, savedInstanceState: @Nullable Bundle?)
open fun onInflate(context: @NonNull Context, attrs: @NonNull AttributeSet, savedInstanceState: @Nullable Bundle?)
Link copied to clipboard
Link copied to clipboard
open fun onMultiWindowModeChanged(isInMultiWindowMode: Boolean)
Link copied to clipboard
Link copied to clipboard
open fun onOptionsMenuClosed(menu: @NonNull Menu)
Link copied to clipboard
Link copied to clipboard
open fun onPictureInPictureModeChanged(isInPictureInPictureMode: Boolean)
Link copied to clipboard
open fun onPrepareOptionsMenu(menu: @NonNull Menu)
Link copied to clipboard
open fun onPrimaryNavigationFragmentChanged(isPrimaryNavigationFragment: Boolean)
Link copied to clipboard
open fun onRequestPermissionsResult(requestCode: Int, permissions: @NonNull Array<out String?>, grantResults: @NonNull IntArray)
Link copied to clipboard
Link copied to clipboard
open fun onSaveInstanceState(outState: @NonNull Bundle)
Link copied to clipboard
open fun onStart()
Link copied to clipboard
open override fun onStateChanged(source: LifecycleOwner, event: Lifecycle.Event)
Link copied to clipboard
open fun onStop()
Link copied to clipboard
open override fun onViewCreated(view: View, savedInstanceState: Bundle?)
Link copied to clipboard
open fun onViewStateRestored(savedInstanceState: @Nullable Bundle?)
Link copied to clipboard
open fun peekAvailableContext(): @Nullable Context?
Link copied to clipboard
fun postponeEnterTransition(duration: Long, timeUnit: @NonNull TimeUnit)
Link copied to clipboard
fun <I : Any?, O : Any?> registerForActivityResult(contract: @NonNull ActivityResultContract<I?, O?>, callback: @NonNull ActivityResultCallback<O?>): @NonNull ActivityResultLauncher<I?>
fun <I : Any?, O : Any?> registerForActivityResult(contract: @NonNull ActivityResultContract<I?, O?>, registry: @NonNull ActivityResultRegistry, callback: @NonNull ActivityResultCallback<O?>): @NonNull ActivityResultLauncher<I?>
Link copied to clipboard
open fun registerForContextMenu(view: @NonNull View)
Link copied to clipboard
fun requestPermissions(permissions: @NonNull Array<out String?>, requestCode: Int)
Link copied to clipboard
Link copied to clipboard
fun requireArguments(): @NonNull Bundle
Link copied to clipboard
Link copied to clipboard
fun requireContext(): @NonNull Context
Link copied to clipboard
fun requireDialog(): @NonNull Dialog
Link copied to clipboard
Link copied to clipboard
fun requireHost(): @NonNull Any
Link copied to clipboard
Link copied to clipboard
fun requireView(): @NonNull View
Link copied to clipboard
Link copied to clipboard
open fun setExitSharedElementCallback(callback: @Nullable SharedElementCallback?)
Link copied to clipboard
open fun setHasOptionsMenu(hasMenu: Boolean)
Link copied to clipboard
open fun setInitialSavedState(state: @Nullable Fragment.SavedState?)
Link copied to clipboard
open fun setMenuVisibility(menuVisible: Boolean)
Link copied to clipboard
open fun setStyle(style: Int, @StyleRes theme: Int)
Link copied to clipboard
open fun setTargetFragment(fragment: @Nullable Fragment?, requestCode: Int)
Link copied to clipboard
open fun setupDialog(dialog: @NonNull Dialog, style: Int)
Link copied to clipboard
open override fun setWindow(window: Window?, gravity: Int = Gravity.NO_GRAVITY, widthRatio: Float = 0.85f, x: Int = 0, y: Int = 0, horizontalMargin: Float = 0.0f, verticalMargin: Float = 0.0f, horizontalWeight: Float = 0.0f, verticalWeight: Float = 0.0f)

设置 Window 布局相关参数

Link copied to clipboard
open fun shouldShowRequestPermissionRationale(permission: @NonNull String): Boolean
Link copied to clipboard
open fun show(manager: @NonNull FragmentManager, tag: @Nullable String?)
open fun show(transaction: @NonNull FragmentTransaction, tag: @Nullable String?): Int
Link copied to clipboard
open override fun showDialog(contentView: View, styleId: Int = R.style.mvvmframe_dialog, gravity: Int = Gravity.NO_GRAVITY, widthRatio: Float = 0.85f, x: Int = 0, y: Int = 0, horizontalMargin: Float = 0.0f, verticalMargin: Float = 0.0f, horizontalWeight: Float = 0.0f, verticalWeight: Float = 0.0f, backCancel: Boolean = true)

显示对话框

Link copied to clipboard
open override fun showLoading()

显示加载中

Link copied to clipboard
open fun showNow(manager: @NonNull FragmentManager, tag: @Nullable String?)
Link copied to clipboard
open override fun showProgressDialog(layoutId: Int = R.layout.mvvmframe_progress_dialog, cancel: Boolean = false)

显示进度对话框

Link copied to clipboard
open override fun showToast(text: CharSequence)
open override fun showToast(resId: Int)

通过Toast显示提示信息

Link copied to clipboard
open fun startActivity(intent: @NonNull Intent)
open fun startActivity(intent: @NonNull Intent, options: @Nullable Bundle?)
Link copied to clipboard
open fun startActivityForResult(intent: @NonNull Intent, requestCode: Int)
open override fun startActivityForResult(intent: Intent, requestCode: Int, options: Bundle?)
Link copied to clipboard
open fun startIntentSenderForResult(intent: @NonNull IntentSender, requestCode: Int, fillInIntent: @Nullable Intent?, flagsMask: Int, flagsValues: Int, extraFlags: Int, options: @Nullable Bundle?)
Link copied to clipboard
Link copied to clipboard
open fun unregisterForContextMenu(view: @NonNull View)