Package apple.uikit

Class UITableViewDiffableDataSource<_SectionIdentifierType,​_ItemIdentifierType>

    • Constructor Detail

      • UITableViewDiffableDataSource

        protected UITableViewDiffableDataSource​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • applySnapshotAnimatingDifferences

        public void applySnapshotAnimatingDifferences​(@NotNull
                                                      @NotNull NSDiffableDataSourceSnapshot<_SectionIdentifierType,​_ItemIdentifierType> snapshot,
                                                      boolean animatingDifferences)
        Apply a snapshot to the table view committing to the new data source state. animatingDifferences == YES: perform a diff between the current UITableView state and the snapshot, and animate the update. animatingDifferences == NO: perform a diff between the current UITableView state and the snapshot, but don't animate the update. If the (optional) completion block is specified, it will be called on the main queue when any animations are completed. Note: you may call this from a background queue which will cause the diff (if needed) to be generated on the calling queue and the final UI update to be applied back on the main queue. However, all applySnapshot invocations must be confined to the same queue. (if you violate this restriction and mix calls between the main queue and some background queue, the framework will log and/or assert to avoid deadlocks)
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(@NotNull
                                                                   @NotNull java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(@NotNull
                                                                   @NotNull java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(@NotNull
                                                                                 @NotNull java.lang.Object aTarget,
                                                                                 @NotNull
                                                                                 @NotNull org.moe.natj.objc.SEL aSelector,
                                                                                 @Nullable
                                                                                 @Nullable java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        @NotNull
        public static @NotNull NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        @NotNull
        public static @NotNull org.moe.natj.objc.Class classForKeyedUnarchiver()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • defaultRowAnimation

        public long defaultRowAnimation()
        Default value is UITableViewRowAnimationAutomatic. Change takes effect on the next update.
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • itemIdentifierForIndexPath

        @Nullable
        public _ItemIdentifierType itemIdentifierForIndexPath​(@NotNull
                                                              @NotNull NSIndexPath indexPath)
        convert item NSIndexPath <-> ItemIdentifierType
      • keyPathsForValuesAffectingValueForKey

        @NotNull
        public static @NotNull NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(@NotNull
                                                                                             @NotNull java.lang.String key)
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setDefaultRowAnimation

        public void setDefaultRowAnimation​(long value)
        Default value is UITableViewRowAnimationAutomatic. Change takes effect on the next update.
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • tableViewCanMoveRowAtIndexPath

        public boolean tableViewCanMoveRowAtIndexPath​(@NotNull
                                                      @NotNull UITableView tableView,
                                                      @NotNull
                                                      @NotNull NSIndexPath indexPath)
        Description copied from interface: UITableViewDataSource
        Allows the reorder accessory view to optionally be shown for a particular row. By default, the reorder control will be shown only if the datasource implements -tableView:moveRowAtIndexPath:toIndexPath:
        Specified by:
        tableViewCanMoveRowAtIndexPath in interface UITableViewDataSource
      • tableViewCellForRowAtIndexPath

        @NotNull
        public @NotNull UITableViewCell tableViewCellForRowAtIndexPath​(@NotNull
                                                                       @NotNull UITableView tableView,
                                                                       @NotNull
                                                                       @NotNull NSIndexPath indexPath)
        Description copied from interface: UITableViewDataSource
        Row display. Implementers should *always* try to reuse cells by setting each cell's reuseIdentifier and querying for available reusable cells with dequeueReusableCellWithIdentifier: Cell gets various attributes set automatically based on table (separators) and data source (accessory views, editing controls)
        Specified by:
        tableViewCellForRowAtIndexPath in interface UITableViewDataSource
      • tableViewCommitEditingStyleForRowAtIndexPath

        public void tableViewCommitEditingStyleForRowAtIndexPath​(@NotNull
                                                                 @NotNull UITableView tableView,
                                                                 long editingStyle,
                                                                 @NotNull
                                                                 @NotNull NSIndexPath indexPath)
        Description copied from interface: UITableViewDataSource
        After a row has the minus or plus button invoked (based on the UITableViewCellEditingStyle for the cell), the dataSource must commit the change Not called for edit actions using UITableViewRowAction - the action's handler will be invoked instead
        Specified by:
        tableViewCommitEditingStyleForRowAtIndexPath in interface UITableViewDataSource
      • version_static

        public static long version_static()
      • applySnapshotUsingReloadData

        public void applySnapshotUsingReloadData​(@NotNull
                                                 @NotNull NSDiffableDataSourceSnapshot<_SectionIdentifierType,​_ItemIdentifierType> snapshot)
        Apply a snapshot to the table view using reloadData. This always skips diffing, and immediately resets the UITableView to the new data source state without animation. Generally this should only be used for specific cases where you need to fully reset the table view's data to the new state immediately (e.g. recycling the table view for use with a completely different data set), or when you specifically want to skip diffing (e.g. applying an exceptionally large changeset). API-Since: 15.0
      • indexForSectionIdentifier

        public long indexForSectionIdentifier​(@NotNull
                                              _SectionIdentifierType identifier)
        API-Since: 15.0
      • sectionIdentifierForIndex

        @Nullable
        public _SectionIdentifierType sectionIdentifierForIndex​(long index)
        convert section index <-> SectionIdentifierType API-Since: 15.0
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.