/tripkit/TripKitAndroidUI/com.skedgo.tripkit.ui.generic.card/TKUICardViewController

TKUICardViewController

class TKUICardViewController : BaseBottomSheetDialogFragment<<Error class: unknown class>>

A generic BottomSheetDialogFragment that dynamically hosts a content Fragment and allows extensive configuration through the hosted fragment itself.

This implementation supports:

The hosted fragment can optionally extend TKUICardBaseFragment to provide custom behavior such as:

Example Usage

val args = Bundle().apply {
    putString("key", "value")
}

val sheet = TKUICard.newInstance(
    showClose = true,
    fragmentClass = MyCustomFragment::class.java,
    fragmentArgs = args
)
sheet.show(parentFragmentManager, "TKUICard")

Closing the Bottom Sheet from the Hosted Fragment

(parentFragment as? BottomSheetDialogFragment)?.dismiss()

See also

TKUICardBaseFragment for customizing behavior
Note: Imitation of TGCardViewController from iOS. Currently, it is a separate library/module on iOS, but since we already have a lot of libraries on our side, not sure if it'll be good to have this on another library. Will just put it in the TripKitUI module for now.

Constructors

TKUICardViewController constructor()
Creates a new instance of TKUICardViewController

Types

Name Summary
Companion object Companion

Functions

Name Summary
dismiss open override fun dismiss()
dismissAllowingStateLoss open override fun dismissAllowingStateLoss()
dump open fun dump(@NonNullp0: String, @Nullablep1: FileDescriptor?, @NonNullp2: PrintWriter, @Nullablep3: Array<String>?)
equals operator override fun equals(@Nullableother: Any?): Boolean
generateTag fun generateTag(): String
getActivity @Nullable
fun getActivity(): FragmentActivity?
getAllowEnterTransitionOverlap open fun getAllowEnterTransitionOverlap(): Boolean
getAllowReturnTransitionOverlap open fun getAllowReturnTransitionOverlap(): Boolean
getArguments @Nullable
fun getArguments(): Bundle?
getChildFragmentManager @NonNull
fun getChildFragmentManager(): FragmentManager
getContext @Nullable
open fun getContext(): Context?
getDefaultViewModelProviderFactory @NonNull
open override fun getDefaultViewModelProviderFactory(): ViewModelProvider.Factory
getDialog @Nullable
open fun getDialog(): Dialog?
getEnterTransition @Nullable
open fun getEnterTransition(): Any?
getExitTransition @Nullable
open fun getExitTransition(): Any?
getHost @Nullable
fun getHost(): Any?
getId fun getId(): Int
getLayoutInflater @NonNull
fun getLayoutInflater(): LayoutInflater
getLifecycle @NonNull
open override fun getLifecycle(): Lifecycle
getParentFragment @Nullable
fun getParentFragment(): Fragment?
getParentFragmentManager @NonNull
fun getParentFragmentManager(): FragmentManager
getReenterTransition @Nullable
open fun getReenterTransition(): Any?
getResources @NonNull
fun getResources(): Resources
getReturnTransition @Nullable
open fun getReturnTransition(): Any?
getSavedStateRegistry @NonNull
override fun getSavedStateRegistry(): SavedStateRegistry
getSharedElementEnterTransition @Nullable
open fun getSharedElementEnterTransition(): Any?
getSharedElementReturnTransition @Nullable
open fun getSharedElementReturnTransition(): Any?
getShowsDialog open fun getShowsDialog(): Boolean
getString @NonNull
fun getString(@StringResp0: Int): String
@NonNull
fun getString(@StringResp0: Int, @Nullablevararg p1: Any): String
getTag @Nullable
fun getTag(): String?
getText @NonNull
fun getText(@StringResp0: Int): CharSequence
getTheme open override fun getTheme(): Int
getView @Nullable
open fun getView(): View?
getViewLifecycleOwner @MainThread
@NonNull
open fun getViewLifecycleOwner(): LifecycleOwner
getViewLifecycleOwnerLiveData @NonNull
open fun getViewLifecycleOwnerLiveData(): LiveData<LifecycleOwner>
getViewModelStore @NonNull
open override fun getViewModelStore(): ViewModelStore
hashCode override fun hashCode(): Int
hasOptionsMenu @RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
fun hasOptionsMenu(): Boolean
isAdded fun isAdded(): Boolean
isCancelable open fun isCancelable(): Boolean
isDetached fun isDetached(): Boolean
isHidden fun isHidden(): Boolean
isInLayout fun isInLayout(): Boolean
isMenuVisible @RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
fun isMenuVisible(): Boolean
isRemoving fun isRemoving(): Boolean
isResumed fun isResumed(): Boolean
isStateSaved fun isStateSaved(): Boolean
isVisible fun isVisible(): Boolean
observe fun <T : Any, L : LiveData<T>> LifecycleOwner.observe(liveData: L, body: (T?) -> Unit)
onAttach @MainThread
open override fun onAttach(@NonNullp0: Context)
onCancel open override fun onCancel(@NonNullp0: DialogInterface)
onConfigurationChanged @CallSuper
open override fun onConfigurationChanged(@NonNullp0: Configuration)
onContextItemSelected @MainThread
open fun onContextItemSelected(@NonNullp0: MenuItem): Boolean
onCreate @MainThread
open override fun onCreate(@Nullablep0: Bundle?)
onCreateAnimation @MainThread
@Nullable
open fun onCreateAnimation(p0: Int, p1: Boolean, p2: Int): Animation?
onCreateAnimator @MainThread
@Nullable
open fun onCreateAnimator(p0: Int, p1: Boolean, p2: Int): Animator?
onCreateContextMenu @MainThread
open override fun onCreateContextMenu(@NonNullp0: ContextMenu, @NonNullp1: View, @Nullablep2: ContextMenu.ContextMenuInfo?)
onCreateDialog @NonNull
open override fun onCreateDialog(@Nullablep0: Bundle?): Dialog
onCreateOptionsMenu @MainThread
open fun onCreateOptionsMenu(@NonNullp0: Menu, @NonNullp1: MenuInflater)
onCreateView open override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View
onDestroy @MainThread
@CallSuper
open fun onDestroy()
onDestroyOptionsMenu @MainThread
open fun onDestroyOptionsMenu()
onDestroyView @MainThread
open override fun onDestroyView()
onDetach @MainThread
open override fun onDetach()
onDismiss open override fun onDismiss(@NonNullp0: DialogInterface)
onGetLayoutInflater @NonNull
open override fun onGetLayoutInflater(@Nullablep0: Bundle?): LayoutInflater
onHiddenChanged @MainThread
open fun onHiddenChanged(p0: Boolean)
onInflate @UiThread
@CallSuper
open fun onInflate(@NonNullp0: Context, @NonNullp1: AttributeSet, @Nullablep2: Bundle?)
onLowMemory @MainThread
@CallSuper
open override fun onLowMemory()
onMultiWindowModeChanged open fun onMultiWindowModeChanged(p0: Boolean)
onOptionsItemSelected @MainThread
open fun onOptionsItemSelected(@NonNullp0: MenuItem): Boolean
onOptionsMenuClosed @MainThread
open fun onOptionsMenuClosed(@NonNullp0: Menu)
onPause @MainThread
@CallSuper
open fun onPause()
onPictureInPictureModeChanged open fun onPictureInPictureModeChanged(p0: Boolean)
onPrepareOptionsMenu @MainThread
open fun onPrepareOptionsMenu(@NonNullp0: Menu)
onPrimaryNavigationFragmentChanged @MainThread
open fun onPrimaryNavigationFragmentChanged(p0: Boolean)
onResume @MainThread
@CallSuper
open fun onResume()
onSaveInstanceState @MainThread
open override fun onSaveInstanceState(@NonNullp0: Bundle)
onStart @MainThread
open override fun onStart()
onStop @MainThread
open override fun onStop()
onViewCreated open override fun onViewCreated(view: View, savedInstanceState: Bundle?)
onViewStateRestored @MainThread
open override fun onViewStateRestored(@Nullablep0: Bundle?)
popSpecificWithTag fun Fragment.popSpecificWithTag(tag: String)
postponeEnterTransition open fun postponeEnterTransition()
fun postponeEnterTransition(p0: Long, @NonNullp1: TimeUnit)
registerForActivityResult @MainThread
@NonNull
override fun <I : Any, O : Any> registerForActivityResult(@NonNullp0: ActivityResultContract<I, O>, @NonNullp1: ActivityResultCallback<O>): ActivityResultLauncher<I>
@MainThread
@NonNull
override fun <I : Any, O : Any> registerForActivityResult(@NonNullp0: ActivityResultContract<I, O>, @NonNullp1: ActivityResultRegistry, @NonNullp2: ActivityResultCallback<O>): ActivityResultLauncher<I>
registerForContextMenu open fun registerForContextMenu(@NonNullp0: View)
replaceFragment fun Fragment.replaceFragment(fragment: Fragment, tag: String, containerViewId: Int, checkBackStack: Boolean = true)
fun Fragment.replaceFragment(fragment: Fragment, tag: String, containerViewId: Int, checkBackStack: Boolean = true, addToBackStack: Boolean = true)
requireActivity @NonNull
fun requireActivity(): FragmentActivity
requireArguments @NonNull
fun requireArguments(): Bundle
requireContext @NonNull
fun requireContext(): Context
requireDialog @NonNull
fun requireDialog(): Dialog
requireHost @NonNull
fun requireHost(): Any
requireParentFragment @NonNull
fun requireParentFragment(): Fragment
requireView @NonNull
fun requireView(): View
setAllowEnterTransitionOverlap open fun setAllowEnterTransitionOverlap(p0: Boolean)
setAllowReturnTransitionOverlap open fun setAllowReturnTransitionOverlap(p0: Boolean)
setArguments open fun setArguments(@Nullablep0: Bundle?)
setCancelable open fun setCancelable(p0: Boolean)
setEnterSharedElementCallback open fun setEnterSharedElementCallback(@Nullablep0: SharedElementCallback?)
setEnterTransition open fun setEnterTransition(@Nullablep0: Any?)
setExitSharedElementCallback open fun setExitSharedElementCallback(@Nullablep0: SharedElementCallback?)
setExitTransition open fun setExitTransition(@Nullablep0: Any?)
setHasOptionsMenu open fun setHasOptionsMenu(p0: Boolean)
setInitialSavedState open fun setInitialSavedState(@Nullablep0: Fragment.SavedState?)
setMenuVisibility open fun setMenuVisibility(p0: Boolean)
setReenterTransition open fun setReenterTransition(@Nullablep0: Any?)
setReturnTransition open fun setReturnTransition(@Nullablep0: Any?)
setSharedElementEnterTransition open fun setSharedElementEnterTransition(@Nullablep0: Any?)
setSharedElementReturnTransition open fun setSharedElementReturnTransition(@Nullablep0: Any?)
setShowsDialog open fun setShowsDialog(p0: Boolean)
setStyle open fun setStyle(p0: Int, @StyleResp1: Int)
setupDialog @RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
open override fun setupDialog(@NonNullp0: Dialog, p1: Int)
shouldShowRequestPermissionRationale open fun shouldShowRequestPermissionRationale(@NonNullp0: String): Boolean
show open fun show(@NonNullp0: FragmentManager, @Nullablep1: String?)
open fun show(@NonNullp0: FragmentTransaction, @Nullablep1: String?): Int
showNow open fun showNow(@NonNullp0: FragmentManager, @Nullablep1: String?)
startActivity open fun startActivity(p0: Intent)
open fun startActivity(p0: Intent, @Nullablep1: Bundle?)
startPostponedEnterTransition open fun startPostponedEnterTransition()
toString @NonNull
open override fun toString(): String
unregisterForContextMenu open fun unregisterForContextMenu(@NonNullp0: View)