From e029225c05010cb33fa7e8679bac6e78942540d0 Mon Sep 17 00:00:00 2001 From: Reda Lemeden Date: Sun, 9 Oct 2016 18:12:29 +0200 Subject: [PATCH] Improve configurability of the animator --- Source/Classes/Animator.swift | 2 +- Source/Classes/GIFAnimatable.swift | 15 ++- Supporting Files/Info.plist | 2 +- docs/Protocols/GIFAnimatable.html | 100 ++++++++++++++++++ .../Documents/Protocols/GIFAnimatable.html | 100 ++++++++++++++++++ .../Contents/Resources/Documents/index.html | 27 +++-- .../Contents/Resources/docSet.dsidx | Bin 12288 -> 12288 bytes docs/docsets/Gifu.tgz | Bin 49624 -> 50863 bytes docs/index.html | 27 +++-- 9 files changed, 250 insertions(+), 23 deletions(-) diff --git a/Source/Classes/Animator.swift b/Source/Classes/Animator.swift index 9aad274..0646adf 100644 --- a/Source/Classes/Animator.swift +++ b/Source/Classes/Animator.swift @@ -8,7 +8,7 @@ public class Animator { var shouldResizeFrames = false /// Responsible for loading individual frames and resizing them if necessary. - var frameStore: FrameStore? + private var frameStore: FrameStore? /// Tracks whether the display link is initialized. private var displayLinkInitialized: Bool = false diff --git a/Source/Classes/GIFAnimatable.swift b/Source/Classes/GIFAnimatable.swift index d9e4c15..cc18ed2 100644 --- a/Source/Classes/GIFAnimatable.swift +++ b/Source/Classes/GIFAnimatable.swift @@ -76,7 +76,6 @@ extension GIFAnimatable { animator?.prepareForAnimation(withGIFData: imageData, size: frame.size, contentMode: contentMode) } - /// Stop animating and free up GIF data from memory. public func prepareForReuse() { animator?.prepareForReuse() @@ -92,6 +91,20 @@ extension GIFAnimatable { animator?.stopAnimating() } + /// Whether the frame images should be resized or not. The default is `false`, which means that the frame images retain their original size. + /// + /// - parameter resize: Boolean value indicating whether individual frames should be resized. + public func setShouldResizeFrames(_ resize: Bool) { + animator?.shouldResizeFrames = resize + } + + /// Sets the number of frames that should be buffered. Default is 50. A high number will result in more memory usage and less CPU load, and vice versa. + /// + /// - parameter frames: The number of frames to buffer. + public func setFrameBufferCount(_ frames: Int) { + animator?.frameBufferCount = frames + } + /// Updates the image with a new frame if necessary. public func updateImageIfNeeded() { if var imageContainer = self as? ImageContainer { diff --git a/Supporting Files/Info.plist b/Supporting Files/Info.plist index f3ced5d..158b348 100644 --- a/Supporting Files/Info.plist +++ b/Supporting Files/Info.plist @@ -19,7 +19,7 @@ CFBundleSignature ???? CFBundleVersion - 132 + 119 NSPrincipalClass diff --git a/docs/Protocols/GIFAnimatable.html b/docs/Protocols/GIFAnimatable.html index caf7cc3..ae178c8 100644 --- a/docs/Protocols/GIFAnimatable.html +++ b/docs/Protocols/GIFAnimatable.html @@ -595,6 +595,106 @@ +
  • +
    + + + + setShouldResizeFrames(_:) + + + Extension method + +
    +
    +
    +
    +
    +
    +

    Whether the frame images should be resized or not. The default is false, which means that the frame images retain their original size.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func setShouldResizeFrames(_ resize: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + resize + + +
    +

    Boolean value indicating whether individual frames should be resized.

    + +
    +
    +
    +
    +
    +
  • +
  • +
    + + + + setFrameBufferCount(_:) + + + Extension method + +
    +
    +
    +
    +
    +
    +

    Sets the number of frames that should be buffered. Default is 50. A high number will result in more memory usage and less CPU load, and vice versa.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func setFrameBufferCount(_ frames: Int)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + frames + + +
    +

    The number of frames to buffer.

    + +
    +
    +
    +
    +
    +
  • diff --git a/docs/docsets/Gifu.docset/Contents/Resources/Documents/Protocols/GIFAnimatable.html b/docs/docsets/Gifu.docset/Contents/Resources/Documents/Protocols/GIFAnimatable.html index caf7cc3..ae178c8 100644 --- a/docs/docsets/Gifu.docset/Contents/Resources/Documents/Protocols/GIFAnimatable.html +++ b/docs/docsets/Gifu.docset/Contents/Resources/Documents/Protocols/GIFAnimatable.html @@ -595,6 +595,106 @@
  • +
  • +
    + + + + setShouldResizeFrames(_:) + + + Extension method + +
    +
    +
    +
    +
    +
    +

    Whether the frame images should be resized or not. The default is false, which means that the frame images retain their original size.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func setShouldResizeFrames(_ resize: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + resize + + +
    +

    Boolean value indicating whether individual frames should be resized.

    + +
    +
    +
    +
    +
    +
  • +
  • +
    + + + + setFrameBufferCount(_:) + + + Extension method + +
    +
    +
    +
    +
    +
    +

    Sets the number of frames that should be buffered. Default is 50. A high number will result in more memory usage and less CPU load, and vice versa.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func setFrameBufferCount(_ frames: Int)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + frames + + +
    +

    The number of frames to buffer.

    + +
    +
    +
    +
    +
    +
  • diff --git a/docs/docsets/Gifu.docset/Contents/Resources/Documents/index.html b/docs/docsets/Gifu.docset/Contents/Resources/Documents/index.html index 3338e27..b84b1c3 100644 --- a/docs/docsets/Gifu.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/Gifu.docset/Contents/Resources/Documents/index.html @@ -63,6 +63,8 @@

    Gifu adds protocol-based, performance-aware animated GIF support to UIKit. (It’s also a prefecture in Japan).

    Swift 2.3 support is on the swift2.3 branch. This branch will not be getting any future updates.

    + +

    ⚠ What follows applies to the yet unreleased 2.0 on master.

    Install

    Carthage

    @@ -81,7 +83,7 @@ for up to date installation instructions.
  • How It Works

    -

    Gifu does not force you to use a specific subclass of UIImageView. The Animator class does the heavy-lifting, while the GIFAnimatable protocol exposes the functionality to the view classes that conform to it, using protocol extensions.

    +

    Gifu does not force you to use the built-in GIFImageView subclass. The Animator does the heavy-lifting, while the GIFAnimatable protocol exposes the functionality to the view classes that conform to it, using protocol extensions.

    The Animator has a FrameStore that only keeps a limited number of frames in-memory, effectively creating a buffer for the animation without consuming all the available memory. This approach makes loading large GIFs a lot more resource-friendly.

    @@ -94,15 +96,12 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw

    There are two options that should cover any situation:

      -
    • Use the built-in GIFImageView subclass.
    • -
    • Make any class conform to GIFAnimatable. Subclassing UIImageView is the easiest since you get most of the required properties for free.
    • +
    • Use the built-in GIFImageView subclass if you don’t need to combine GIF support with another image library.
    • +
    • If you need more flexibility and composability, make your class conform to GIFAnimatable. In practice, any UIView subclass would do, since you get most of the required properties for free. For best results, make your UIImageView subclass conform to GIFAnimatable to get other niceties such as intrinsic content size.
    -

    GIFImageView

    - -

    A subclass of UIImageView that conforms to GIFAnimatable. You can use this class as-is or subclass it for further customization (not recommended).

    GIFAnimatable

    -

    The bread and butter of Gifu. Through protocol extensions, GIFAnimatable exposes all the APIs of the library, and with very little boilerplate, any UIImageView subclass can conform to it.

    +

    The bread and butter of Gifu. Through protocol extensions, GIFAnimatable exposes all the APIs of the library, and with very little boilerplate, any class can conform to it.

    class MyImageView: UIImageView, GIFAnimatable {
       public lazy var animator: Animator? = {
         return Animator(withDelegate: self)
    @@ -114,7 +113,7 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw
     }
     
    -

    That’s it. Now MyImageView is fully GIF-compatible, and any of these methods can be called on it:

    +

    That’s it. Now MyImageView has access to all these methods and properties:

    • prepareForAnimation(withGIFNamed:) and prepareForAnimation(withGIFData:) to prepare the animator property for animation.
    • @@ -125,8 +124,16 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw
    • updateImageIfNeeded() to update the image property if necessary.
    -

    This approach is especially powerful when you want to combine the functionality of different image libraries.

    -
    class MyImageView: OtherImageClass, GIFAnimatable {}
    +

    Furthermore, you can make any class GIF-animatable, starting with UIView subclasses:

    +
    class CustomAnimatedView: UIView, GIFAnimatable {
    +  public lazy var animator: Animator? = {
    +    return Animator(withDelegate: self)
    +  }()
    +
    +  override public func display(_ layer: CALayer) {
    +    updateImageIfNeeded()
    +  }
    +}
     

    Keep in mind that you need to have control over the class implementing GIFAnimatable since you cannot add the stored Animator property in an extension.

    diff --git a/docs/docsets/Gifu.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Gifu.docset/Contents/Resources/docSet.dsidx index 4ca826a640cdf9b4d737c575859defd71676a516..424df3fe825ae333f87ee43b4a5e5eb3a3ddc67a 100644 GIT binary patch delta 586 zcmZojXh@hK%_uif#+gxWW5N=CW*Jug$?O73;^yr8**)0>*{-vtvN5qPWG!HIXVqop z-&lB_#Y#qol|i0CGoUEHBtJPnrx?!A%P7gsk&tF(kY-SI&PgmTPA!H~U>S9($+lt| zjFOYn#0(fECQlbjU=*MHLoA6=Y;v@CA*1Nzv*MPFB9qxA%o&9z+e?(lmI<*jSW7k< z7pIoE6(#1TI+doSr4~8om*$md#7{masH&_LD*}1K_53@1zTk!F+ zF5+wCS;jw~EseLF$CmF77Yo-i&S~riI4n3-IJU5RZ7jUNGMPn9R$4}q6&M(dSVBX3 zvW=PsyOaT|s<=JlsQVA~__I*kolJl^G}h6N}~$FJv>8Y}99* zoG6|J46QTjmh7VDtm?9^jFWjJ41r;0r%@^^T+RjxEJiG0LLjt+s@Xt+1=2}YXleMf F0|2QSuNeRU delta 285 zcmWO0%}N4M6ae5(&YXK4{~hlg?=*LjCfOzp7iwjjh=?d~X>A5Ef}micXzRQ|ama0p zLTEWmZ_uKkULc4bqqg}1AK%y?`?m|=-Fe&KMgCJR;bMYVzGC;d$v)TsfAJnixPgn9 zh=MnB-gBuSG$?8a1!dY3b#UlXG(pm%@IjCvhftzZ8Gub+vI|ABoi-F`-?@t8a-Vfv zH0E#6$S4mZYE-bSNsbM^I~W$H%G)HPEvda5+S+!zz#^kGTl2rNRc#xjbW~uDPOjfqrC* b*==)K?*NsZHD0{NwhCK7edi*M>j&%~Sz|zS diff --git a/docs/docsets/Gifu.tgz b/docs/docsets/Gifu.tgz index 9aa4e6996e5de65864841bd155e7655d96137b5f..44b83998b088c41ad382bedb3f311a4e99f2f005 100644 GIT binary patch literal 50863 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 z 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 diff --git a/docs/index.html b/docs/index.html index 3338e27..b84b1c3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -63,6 +63,8 @@

    Swift 2.3 support is on the swift2.3 branch. This branch will not be getting any future updates.

    + +

    ⚠ What follows applies to the yet unreleased 2.0 on master.

    Install

    Carthage

    @@ -81,7 +83,7 @@ for up to date installation instructions.

    How It Works

    -

    Gifu does not force you to use a specific subclass of UIImageView. The Animator class does the heavy-lifting, while the GIFAnimatable protocol exposes the functionality to the view classes that conform to it, using protocol extensions.

    +

    Gifu does not force you to use the built-in GIFImageView subclass. The Animator does the heavy-lifting, while the GIFAnimatable protocol exposes the functionality to the view classes that conform to it, using protocol extensions.

    The Animator has a FrameStore that only keeps a limited number of frames in-memory, effectively creating a buffer for the animation without consuming all the available memory. This approach makes loading large GIFs a lot more resource-friendly.

    @@ -94,15 +96,12 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw

    There are two options that should cover any situation:

      -
    • Use the built-in GIFImageView subclass.
    • -
    • Make any class conform to GIFAnimatable. Subclassing UIImageView is the easiest since you get most of the required properties for free.
    • +
    • Use the built-in GIFImageView subclass if you don’t need to combine GIF support with another image library.
    • +
    • If you need more flexibility and composability, make your class conform to GIFAnimatable. In practice, any UIView subclass would do, since you get most of the required properties for free. For best results, make your UIImageView subclass conform to GIFAnimatable to get other niceties such as intrinsic content size.
    -

    GIFImageView

    - -

    A subclass of UIImageView that conforms to GIFAnimatable. You can use this class as-is or subclass it for further customization (not recommended).

    GIFAnimatable

    -

    The bread and butter of Gifu. Through protocol extensions, GIFAnimatable exposes all the APIs of the library, and with very little boilerplate, any UIImageView subclass can conform to it.

    +

    The bread and butter of Gifu. Through protocol extensions, GIFAnimatable exposes all the APIs of the library, and with very little boilerplate, any class can conform to it.

    class MyImageView: UIImageView, GIFAnimatable {
       public lazy var animator: Animator? = {
         return Animator(withDelegate: self)
    @@ -114,7 +113,7 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw
     }
     
    -

    That’s it. Now MyImageView is fully GIF-compatible, and any of these methods can be called on it:

    +

    That’s it. Now MyImageView has access to all these methods and properties:

    • prepareForAnimation(withGIFNamed:) and prepareForAnimation(withGIFData:) to prepare the animator property for animation.
    • @@ -125,8 +124,16 @@ containing 10 frames, Gifu will load the current frame (red), buffer the next tw
    • updateImageIfNeeded() to update the image property if necessary.
    -

    This approach is especially powerful when you want to combine the functionality of different image libraries.

    -
    class MyImageView: OtherImageClass, GIFAnimatable {}
    +

    Furthermore, you can make any class GIF-animatable, starting with UIView subclasses:

    +
    class CustomAnimatedView: UIView, GIFAnimatable {
    +  public lazy var animator: Animator? = {
    +    return Animator(withDelegate: self)
    +  }()
    +
    +  override public func display(_ layer: CALayer) {
    +    updateImageIfNeeded()
    +  }
    +}
     

    Keep in mind that you need to have control over the class implementing GIFAnimatable since you cannot add the stored Animator property in an extension.

    Gifu adds protocol-based, performance-aware animated GIF support to UIKit. (It’s also a prefecture in Japan).