Calls a single method on a skin.

Options
:add^String name, ^Object resource
:add^String name, ^Object resource, ^java.lang.Class type
:add-regions^TextureAtlas atlas
Adds all named texture regions from the atlas. The atlas will not be automatically disposed when the skin is disposed.
:dispose
Disposes the {@link TextureAtlas} and all {@link Disposable} resources in the skin.
:find^Object resource
Returns the name of the specified style object, or null if it is not in the skin. This compares potentially every style object in the skin of the same type as the specified style, which may be a somewhat expensive operation.
:get^java.lang.Class type
Returns a resource named "default" for the specified type.
:get^String name, ^java.lang.Class type
Returns a named resource of the specified type.
:get-all^java.lang.Class type
Returns the name to resource mapping for the specified type, or null if no resources of that type exist.
:get-atlas
Returns the {@link TextureAtlas} passed to this skin constructor, or null.
:get-color^String name
:get-drawable^String name
Returns a registered drawable. If no drawable is found but a region, ninepatch, or sprite exists with the name, then the appropriate drawable is created and stored in the skin.
:get-font^String name
:get-patch^String name
Returns a registered ninepatch. If no ninepatch is found but a region exists with the name, a ninepatch is created from the region and stored in the skin. If the region is an {@link AtlasRegion} then the {@link AtlasRegion#splits} are used, otherwise the ninepatch will have the region as the center patch.
:get-region^String name
Returns a registered texture region. If no region is found but a texture exists with the name, a region is created from the texture and stored in the skin.
:get-regions^String region-name
:get-sprite^String name
Returns a registered sprite. If no sprite is found but a region exists with the name, a sprite is created from the region and stored in the skin. If the region is an {@link AtlasRegion} then an {@link AtlasSprite} is used if the region has been whitespace stripped or packed rotated 90 degrees.
:get-tiled-drawable^String name
Returns a registered tiled drawable. If no tiled drawable is found but a region exists with the name, a tiled drawable is created from the region and stored in the skin.
:has^String name, ^java.lang.Class type
:load^FileHandle skin-file
Adds all resources in the specified skin JSON file.
:new-drawable^String name
Returns a copy of a drawable found in the skin via {@link #getDrawable(String)}.
:new-drawable^String name, ^float r, ^float g, ^float b, ^float a
Returns a tinted copy of a drawable found in the skin via {@link #getDrawable(String)}.
:new-drawable^String name, ^Color tint
Returns a tinted copy of a drawable found in the skin via {@link #getDrawable(String)}.
:new-drawable^Drawable drawable
Returns a copy of the specified drawable.
:new-drawable^Drawable drawable, ^float r, ^float g, ^float b, ^float a
Returns a tinted copy of a drawable found in the skin via {@link #getDrawable(String)}.
:new-drawable^Drawable drawable, ^Color tint
Returns a tinted copy of a drawable found in the skin via {@link #getDrawable(String)}.
:optional^String name, ^java.lang.Class type
Returns a named resource of the specified type.
:remove^String name, ^java.lang.Class type
:set-enabled^Actor actor, ^boolean enabled
Sets the style on the actor to disabled or enabled. This is done by appending "-disabled" to the style name when enabled is false, and removing "-disabled" from the style name when enabled is true. A method named "getStyle" is called the actor via reflection and the name of that style is found in the skin. If the actor doesn't have a "getStyle" method or the style was not found in the skin, no exception is thrown and the actor is left unchanged.
Source
(defmacro skin!
  [object k & options]
  `(u/call! ^Skin ~object ~k ~@options))