Compare commits
134 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4534c0dcd4 | |||
| b24752e27a | |||
| 22ef289da4 | |||
| 1428534fcc | |||
| 3ee0a8a606 | |||
| 0f35c65a48 | |||
| c578516270 | |||
| 1d00b258e9 | |||
| 37940a69eb | |||
| 739c698c02 | |||
| 3289f9c315 | |||
| 82f01134d2 | |||
| f6d7e82c98 | |||
| 5c8a416f5b | |||
| 0122f09e6b | |||
| 98a4fa1db9 | |||
| a766ceddbd | |||
| 6d961f5923 | |||
| cf2619bbd8 | |||
| d378620f8b | |||
| e02c17db4f | |||
| cb88f53fc6 | |||
| 5826edf31f | |||
| ec9a6fc6a0 | |||
| 6d45896997 | |||
| 0c2b2c49ee | |||
| bdb3ccb994 | |||
| 51627a3f3d | |||
| 68881fb3cc | |||
| 83d32f754b | |||
| 628a4bab8a | |||
| 2c9a57acdc | |||
| db7ca734e9 | |||
| f4f645548d | |||
| c520680100 | |||
| 04e27502df | |||
| 9f211f33af | |||
| 083d952ad7 | |||
| 7254460f60 | |||
| 9dd5b4c82d | |||
| 81c4a16180 | |||
| 4e55227fee | |||
| 3aec47f892 | |||
| b9769e418b | |||
| b29b6ed033 | |||
| 69e60152c8 | |||
| 2d2097033d | |||
| 2e7943b049 | |||
| 3968b56d02 | |||
| fc589564b4 | |||
| ef8abb6499 | |||
| d9e9afcc8b | |||
| 41df3a1714 | |||
| 9b0d1eded6 | |||
| ec8c1424b3 | |||
| dd75a83797 | |||
| 774cb1cf64 | |||
| c4cf9482bf | |||
| b64cda5541 | |||
| 06df7ff2b1 | |||
| ea82aeff84 | |||
| 69b65edc06 | |||
| 5782a0fafa | |||
| 0652edf64d | |||
| 1fffcfb25e | |||
| 3f3a676a6d | |||
| 7a6175e8fb | |||
| 6cf24b1ee1 | |||
| c37e32ce3f | |||
| 38926b111a | |||
| 1604f89c72 | |||
| d8d7eaf528 | |||
| 62ad8b528f | |||
| dce71006c9 | |||
| 77ae3b58c9 | |||
| 2d23e4f7f3 | |||
| 7e95b925a5 | |||
| 9a21e80ae8 | |||
| 3f202ec9cf | |||
| a4504a1502 | |||
| 76ad9f1828 | |||
| e042cb52c6 | |||
| d239f5d3c8 | |||
| 57d64c3f48 | |||
| d88128933a | |||
| 2423fa9bbf | |||
| 1b029ff382 | |||
| 83e1a11bef | |||
| 8a62e44836 | |||
| c6445f9735 | |||
| ccb4aabee9 | |||
| ed6da6d0d8 | |||
| 127390ec3a | |||
| be772db3a8 | |||
| 4223096348 | |||
| d4672bd1cf | |||
| e5f7ef6de4 | |||
| 2541588494 | |||
| 2193224759 | |||
| 13b7392cd8 | |||
| 41d7adbe1d | |||
| c88d455a59 | |||
| 84e443b6e0 | |||
| c8cd829d53 | |||
| e9a254191c | |||
| 01266bd064 | |||
| 1fa7b3782b | |||
| 6dcb0a3cae | |||
| b53395a360 | |||
| 44dd189359 | |||
| a96d89c493 | |||
| a033fb435c | |||
| d6d0241a22 | |||
| 50953a681d | |||
| ef716d63a6 | |||
| 03585df85b | |||
| 18d4b5cec4 | |||
| b172e74f65 | |||
| 51379e0ade | |||
| 0c29a4d761 | |||
| 01712751b1 | |||
| 3f98e72b7c | |||
| eb72238cbf | |||
| ba1681bc9a | |||
| 8efedde1c9 | |||
| 64653d444d | |||
| 27db3474ce | |||
| 2b284370bf | |||
| 1161ccb54d | |||
| a3b05ed8bd | |||
| a328df3264 | |||
| cc37c283cc | |||
| 242d6f6ed9 | |||
| e4a1ab4c17 |
@@ -0,0 +1 @@
|
||||
4.2
|
||||
@@ -1,6 +1,13 @@
|
||||
osx_image: xcode7.2
|
||||
osx_image: xcode9.2
|
||||
language: objective-c
|
||||
|
||||
xcode_project: CircleMenu.xcodeproj
|
||||
xcode_scheme: CircleMenu
|
||||
xcode_sdk: iphonesimulator
|
||||
scheme: CircleMenu
|
||||
xcode_sdk: iphonesimulator11.2
|
||||
|
||||
# SWIFT_VERSION: 4.0
|
||||
|
||||
# whitelist
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
@@ -1,5 +1,32 @@
|
||||
# Change Log
|
||||
|
||||
## [1.0.0](https://github.com/Ramotion/circle-menu/tree/1.0.0) (2016-03-24)
|
||||
[Full Changelog](https://github.com/Ramotion/circle-menu/compare/0.0.7...1.0.0)
|
||||
|
||||
**Closed issues:**
|
||||
|
||||
- Add tap gesture recognizer on view to close the menu [\#9](https://github.com/Ramotion/circle-menu/issues/9)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- fixed swift 2.2 deprecated warnings in circlemenu.swift [\#10](https://github.com/Ramotion/circle-menu/pull/10) ([sairamkotha](https://github.com/sairamkotha))
|
||||
|
||||
## [0.0.7](https://github.com/Ramotion/circle-menu/tree/0.0.7) (2016-03-16)
|
||||
[Full Changelog](https://github.com/Ramotion/circle-menu/compare/0.0.6...0.0.7)
|
||||
|
||||
## [0.0.6](https://github.com/Ramotion/circle-menu/tree/0.0.6) (2016-03-14)
|
||||
[Full Changelog](https://github.com/Ramotion/circle-menu/compare/0.0.5...0.0.6)
|
||||
|
||||
**Closed issues:**
|
||||
|
||||
- Problem! [\#7](https://github.com/Ramotion/circle-menu/issues/7)
|
||||
- Menu icon position [\#6](https://github.com/Ramotion/circle-menu/issues/6)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Fix crash in example [\#3](https://github.com/Ramotion/circle-menu/pull/3) ([skywinder](https://github.com/skywinder))
|
||||
- Cleaning and docking [\#2](https://github.com/Ramotion/circle-menu/pull/2) ([Skogetroll](https://github.com/Skogetroll))
|
||||
|
||||
## [0.0.5](https://github.com/Ramotion/circle-menu/tree/0.0.5) (2016-02-10)
|
||||
[Full Changelog](https://github.com/Ramotion/circle-menu/compare/0.0.4...0.0.5)
|
||||
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
Pod::Spec.new do |s|
|
||||
s.name = 'CircleMenu'
|
||||
s.version = '0.0.5'
|
||||
s.version = '4.1.0'
|
||||
s.summary = 'Amazing animation with buttons'
|
||||
s.homepage = 'https://github.com/Ramotion/circle-menu'
|
||||
s.license = 'MIT'
|
||||
s.authors = { 'Juri Vasylenko' => 'juri.v@ramotion.com' }
|
||||
s.ios.deployment_target = '8.0'
|
||||
s.ios.deployment_target = '9.0'
|
||||
s.source = { :git => 'https://github.com/Ramotion/circle-menu.git', :tag => s.version.to_s }
|
||||
s.source_files = 'CircleMenuLib/**/*.swift'
|
||||
s.requires_arc = true
|
||||
end
|
||||
|
||||
@@ -3,15 +3,20 @@
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objectVersion = 51;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8403F57C1CFF2C2E007D0BD1 /* CircleMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = 8403F57B1CFF2C2E007D0BD1 /* CircleMenu.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
8403F5801CFF2C2E007D0BD1 /* CircleMenu.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8403F5791CFF2C2E007D0BD1 /* CircleMenu.framework */; };
|
||||
8403F5811CFF2C2E007D0BD1 /* CircleMenu.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8403F5791CFF2C2E007D0BD1 /* CircleMenu.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
8403F5861CFF2C46007D0BD1 /* CircleMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58D1C58E898008872D5 /* CircleMenu.swift */; };
|
||||
8403F5871CFF2C4B007D0BD1 /* CircleMenuLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC5931C58F3E2008872D5 /* CircleMenuLoader.swift */; };
|
||||
8403F5881CFF2C4F007D0BD1 /* CircleMenuButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58F1C58E898008872D5 /* CircleMenuButton.swift */; };
|
||||
841EC5901C58E898008872D5 /* CircleMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58D1C58E898008872D5 /* CircleMenu.swift */; };
|
||||
841EC5911C58E898008872D5 /* CircleMenuButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58F1C58E898008872D5 /* CircleMenuButton.swift */; };
|
||||
841EC5941C58F3E2008872D5 /* CircleMenuLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC5931C58F3E2008872D5 /* CircleMenuLoader.swift */; };
|
||||
8497460C1C6A1C5D001E7184 /* CircleMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58D1C58E898008872D5 /* CircleMenu.swift */; };
|
||||
8497460D1C6A1C6D001E7184 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 84F248BD1C58E65F008F12C1 /* Assets.xcassets */; };
|
||||
8497460E1C6A1C9D001E7184 /* CircleMenuLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC5931C58F3E2008872D5 /* CircleMenuLoader.swift */; };
|
||||
8497460F1C6A1CA0001E7184 /* CircleMenuButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841EC58F1C58E898008872D5 /* CircleMenuButton.swift */; };
|
||||
84F248B71C58E65F008F12C1 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F248B61C58E65F008F12C1 /* AppDelegate.swift */; };
|
||||
@@ -23,6 +28,13 @@
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
8403F57E1CFF2C2E007D0BD1 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84F248AB1C58E65F008F12C1 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = 8403F5781CFF2C2E007D0BD1;
|
||||
remoteInfo = CircleMenu;
|
||||
};
|
||||
84F248C81C58E65F008F12C1 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84F248AB1C58E65F008F12C1 /* Project object */;
|
||||
@@ -32,27 +44,51 @@
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
8403F5851CFF2C2E007D0BD1 /* Embed Frameworks */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
8403F5811CFF2C2E007D0BD1 /* CircleMenu.framework in Embed Frameworks */,
|
||||
);
|
||||
name = "Embed Frameworks";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
8403F5791CFF2C2E007D0BD1 /* CircleMenu.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CircleMenu.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
8403F57B1CFF2C2E007D0BD1 /* CircleMenu.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CircleMenu.h; sourceTree = "<group>"; };
|
||||
8403F57D1CFF2C2E007D0BD1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
841EC58D1C58E898008872D5 /* CircleMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CircleMenu.swift; sourceTree = "<group>"; };
|
||||
841EC58F1C58E898008872D5 /* CircleMenuButton.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CircleMenuButton.swift; sourceTree = "<group>"; };
|
||||
841EC5931C58F3E2008872D5 /* CircleMenuLoader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CircleMenuLoader.swift; sourceTree = "<group>"; };
|
||||
84F248B31C58E65F008F12C1 /* CircleMenu.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CircleMenu.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84F248B31C58E65F008F12C1 /* CircleMenuDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CircleMenuDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84F248B61C58E65F008F12C1 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
84F248B81C58E65F008F12C1 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
|
||||
84F248BB1C58E65F008F12C1 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||
84F248BD1C58E65F008F12C1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
84F248C01C58E65F008F12C1 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
84F248C21C58E65F008F12C1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
84F248C71C58E65F008F12C1 /* CircleMenuTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CircleMenuTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84F248CB1C58E65F008F12C1 /* CircleMenuTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CircleMenuTests.swift; sourceTree = "<group>"; };
|
||||
84F248CD1C58E65F008F12C1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8403F5751CFF2C2E007D0BD1 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
84F248B01C58E65F008F12C1 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8403F5801CFF2C2E007D0BD1 /* CircleMenu.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -66,6 +102,15 @@
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
8403F57A1CFF2C2E007D0BD1 /* CircleMenu */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8403F57B1CFF2C2E007D0BD1 /* CircleMenu.h */,
|
||||
8403F57D1CFF2C2E007D0BD1 /* Info.plist */,
|
||||
);
|
||||
path = CircleMenu;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
841EC58C1C58E87F008872D5 /* CircleMenuLib */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -98,6 +143,7 @@
|
||||
841EC58C1C58E87F008872D5 /* CircleMenuLib */,
|
||||
84F248B51C58E65F008F12C1 /* CircleMenu */,
|
||||
84F248CA1C58E65F008F12C1 /* CircleMenuTests */,
|
||||
8403F57A1CFF2C2E007D0BD1 /* CircleMenu */,
|
||||
84F248B41C58E65F008F12C1 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
@@ -105,8 +151,9 @@
|
||||
84F248B41C58E65F008F12C1 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
84F248B31C58E65F008F12C1 /* CircleMenu.app */,
|
||||
84F248B31C58E65F008F12C1 /* CircleMenuDemo.app */,
|
||||
84F248C71C58E65F008F12C1 /* CircleMenuTests.xctest */,
|
||||
8403F5791CFF2C2E007D0BD1 /* CircleMenu.framework */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@@ -119,7 +166,6 @@
|
||||
84F248BA1C58E65F008F12C1 /* Main.storyboard */,
|
||||
84F248BD1C58E65F008F12C1 /* Assets.xcassets */,
|
||||
84F248BF1C58E65F008F12C1 /* LaunchScreen.storyboard */,
|
||||
84F248C21C58E65F008F12C1 /* Info.plist */,
|
||||
);
|
||||
path = CircleMenu;
|
||||
sourceTree = "<group>";
|
||||
@@ -135,15 +181,26 @@
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8403F5761CFF2C2E007D0BD1 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8403F57C1CFF2C2E007D0BD1 /* CircleMenu.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
84F248B21C58E65F008F12C1 /* CircleMenu */ = {
|
||||
8403F5781CFF2C2E007D0BD1 /* CircleMenu */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 84F248D01C58E65F008F12C1 /* Build configuration list for PBXNativeTarget "CircleMenu" */;
|
||||
buildConfigurationList = 8403F5821CFF2C2E007D0BD1 /* Build configuration list for PBXNativeTarget "CircleMenu" */;
|
||||
buildPhases = (
|
||||
84F248AF1C58E65F008F12C1 /* Sources */,
|
||||
84F248B01C58E65F008F12C1 /* Frameworks */,
|
||||
84F248B11C58E65F008F12C1 /* Resources */,
|
||||
846980FB1C59F398002D77BE /* swift lint */,
|
||||
8403F5741CFF2C2E007D0BD1 /* Sources */,
|
||||
8403F5751CFF2C2E007D0BD1 /* Frameworks */,
|
||||
8403F5761CFF2C2E007D0BD1 /* Headers */,
|
||||
8403F5771CFF2C2E007D0BD1 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -151,7 +208,26 @@
|
||||
);
|
||||
name = CircleMenu;
|
||||
productName = CircleMenu;
|
||||
productReference = 84F248B31C58E65F008F12C1 /* CircleMenu.app */;
|
||||
productReference = 8403F5791CFF2C2E007D0BD1 /* CircleMenu.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
84F248B21C58E65F008F12C1 /* CircleMenuDemo */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 84F248D01C58E65F008F12C1 /* Build configuration list for PBXNativeTarget "CircleMenuDemo" */;
|
||||
buildPhases = (
|
||||
84F248AF1C58E65F008F12C1 /* Sources */,
|
||||
84F248B01C58E65F008F12C1 /* Frameworks */,
|
||||
84F248B11C58E65F008F12C1 /* Resources */,
|
||||
8403F5851CFF2C2E007D0BD1 /* Embed Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
8403F57F1CFF2C2E007D0BD1 /* PBXTargetDependency */,
|
||||
);
|
||||
name = CircleMenuDemo;
|
||||
productName = CircleMenu;
|
||||
productReference = 84F248B31C58E65F008F12C1 /* CircleMenuDemo.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
84F248C61C58E65F008F12C1 /* CircleMenuTests */ = {
|
||||
@@ -179,21 +255,28 @@
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastSwiftUpdateCheck = 0720;
|
||||
LastUpgradeCheck = 0720;
|
||||
LastUpgradeCheck = 1020;
|
||||
ORGANIZATIONNAME = "Alex K.";
|
||||
TargetAttributes = {
|
||||
8403F5781CFF2C2E007D0BD1 = {
|
||||
CreatedOnToolsVersion = 7.3.1;
|
||||
LastSwiftMigration = 1020;
|
||||
};
|
||||
84F248B21C58E65F008F12C1 = {
|
||||
CreatedOnToolsVersion = 7.2;
|
||||
DevelopmentTeam = 34MUF9YXTA;
|
||||
LastSwiftMigration = 1020;
|
||||
};
|
||||
84F248C61C58E65F008F12C1 = {
|
||||
CreatedOnToolsVersion = 7.2;
|
||||
LastSwiftMigration = 1020;
|
||||
TestTargetID = 84F248B21C58E65F008F12C1;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 84F248AE1C58E65F008F12C1 /* Build configuration list for PBXProject "CircleMenu" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
compatibilityVersion = "Xcode 10.0";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
@@ -204,13 +287,21 @@
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
84F248B21C58E65F008F12C1 /* CircleMenu */,
|
||||
84F248B21C58E65F008F12C1 /* CircleMenuDemo */,
|
||||
84F248C61C58E65F008F12C1 /* CircleMenuTests */,
|
||||
8403F5781CFF2C2E007D0BD1 /* CircleMenu */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8403F5771CFF2C2E007D0BD1 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
84F248B11C58E65F008F12C1 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -225,30 +316,22 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8497460D1C6A1C6D001E7184 /* Assets.xcassets in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
846980FB1C59F398002D77BE /* swift lint */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8403F5741CFF2C2E007D0BD1 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "swift lint";
|
||||
outputPaths = (
|
||||
8403F5861CFF2C46007D0BD1 /* CircleMenu.swift in Sources */,
|
||||
8403F5881CFF2C4F007D0BD1 /* CircleMenuButton.swift in Sources */,
|
||||
8403F5871CFF2C4B007D0BD1 /* CircleMenuLoader.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "if which swiftlint >/dev/null; then\nswiftlint\nelse\necho \"SwiftLint does not exist, download from https://github.com/realm/SwiftLint\"\nfi";
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
84F248AF1C58E65F008F12C1 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -275,9 +358,14 @@
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXTargetDependency section */
|
||||
8403F57F1CFF2C2E007D0BD1 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 8403F5781CFF2C2E007D0BD1 /* CircleMenu */;
|
||||
targetProxy = 8403F57E1CFF2C2E007D0BD1 /* PBXContainerItemProxy */;
|
||||
};
|
||||
84F248C91C58E65F008F12C1 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 84F248B21C58E65F008F12C1 /* CircleMenu */;
|
||||
target = 84F248B21C58E65F008F12C1 /* CircleMenuDemo */;
|
||||
targetProxy = 84F248C81C58E65F008F12C1 /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
@@ -302,21 +390,88 @@
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
8403F5831CFF2C2E007D0BD1 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = CircleMenu/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenu;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
8403F5841CFF2C2E007D0BD1 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = CircleMenu/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenu;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
84F248CE1C58E65F008F12C1 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
@@ -338,11 +493,12 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.2;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 4.2;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -350,17 +506,28 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
@@ -376,9 +543,12 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.2;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
SWIFT_VERSION = 4.2;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
@@ -386,26 +556,40 @@
|
||||
84F248D11C58E65F008F12C1 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
INFOPLIST_FILE = CircleMenu/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
OTHER_SWIFT_FLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenu;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.dev;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
84F248D21C58E65F008F12C1 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
INFOPLIST_FILE = CircleMenu/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
OTHER_SWIFT_FLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenu;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.dev;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@@ -414,10 +598,15 @@
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
INFOPLIST_FILE = CircleMenuTests/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenuTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CircleMenu.app/CircleMenu";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CircleMenuDemo.app/CircleMenuDemo";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -426,16 +615,30 @@
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
INFOPLIST_FILE = CircleMenuTests/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ramotion.CircleMenuTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CircleMenu.app/CircleMenu";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CircleMenuDemo.app/CircleMenuDemo";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
8403F5821CFF2C2E007D0BD1 /* Build configuration list for PBXNativeTarget "CircleMenu" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
8403F5831CFF2C2E007D0BD1 /* Debug */,
|
||||
8403F5841CFF2C2E007D0BD1 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
84F248AE1C58E65F008F12C1 /* Build configuration list for PBXProject "CircleMenu" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
@@ -445,7 +648,7 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
84F248D01C58E65F008F12C1 /* Build configuration list for PBXNativeTarget "CircleMenu" */ = {
|
||||
84F248D01C58E65F008F12C1 /* Build configuration list for PBXNativeTarget "CircleMenuDemo" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
84F248D11C58E65F008F12C1 /* Debug */,
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0720"
|
||||
LastUpgradeVersion = "1020"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
@@ -14,8 +14,8 @@
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "84F248B21C58E65F008F12C1"
|
||||
BuildableName = "CircleMenu.app"
|
||||
BlueprintIdentifier = "8403F5781CFF2C2E007D0BD1"
|
||||
BuildableName = "CircleMenu.framework"
|
||||
BlueprintName = "CircleMenu"
|
||||
ReferencedContainer = "container:CircleMenu.xcodeproj">
|
||||
</BuildableReference>
|
||||
@@ -28,26 +28,7 @@
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "84F248C61C58E65F008F12C1"
|
||||
BuildableName = "CircleMenuTests.xctest"
|
||||
BlueprintName = "CircleMenuTests"
|
||||
ReferencedContainer = "container:CircleMenu.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "84F248B21C58E65F008F12C1"
|
||||
BuildableName = "CircleMenu.app"
|
||||
BlueprintName = "CircleMenu"
|
||||
ReferencedContainer = "container:CircleMenu.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
@@ -61,16 +42,15 @@
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "84F248B21C58E65F008F12C1"
|
||||
BuildableName = "CircleMenu.app"
|
||||
BlueprintIdentifier = "8403F5781CFF2C2E007D0BD1"
|
||||
BuildableName = "CircleMenu.framework"
|
||||
BlueprintName = "CircleMenu"
|
||||
ReferencedContainer = "container:CircleMenu.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
@@ -80,16 +60,15 @@
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "84F248B21C58E65F008F12C1"
|
||||
BuildableName = "CircleMenu.app"
|
||||
BlueprintIdentifier = "8403F5781CFF2C2E007D0BD1"
|
||||
BuildableName = "CircleMenu.framework"
|
||||
BlueprintName = "CircleMenu"
|
||||
ReferencedContainer = "container:CircleMenu.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
|
||||
@@ -13,32 +13,9 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
|
||||
|
||||
var window: UIWindow?
|
||||
|
||||
|
||||
func application(
|
||||
application: UIApplication,
|
||||
didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
|
||||
_: UIApplication,
|
||||
didFinishLaunchingWithOptions _: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
|
||||
return true
|
||||
}
|
||||
|
||||
func applicationWillResignActive(application: UIApplication) {
|
||||
|
||||
}
|
||||
|
||||
func applicationDidEnterBackground(application: UIApplication) {
|
||||
|
||||
}
|
||||
|
||||
func applicationWillEnterForeground(application: UIApplication) {
|
||||
|
||||
}
|
||||
|
||||
func applicationDidBecomeActive(application: UIApplication) {
|
||||
|
||||
}
|
||||
|
||||
func applicationWillTerminate(application: UIApplication) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,38 +1,119 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-40.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-60.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-58.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-87.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-80.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-120.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-120.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "icon-180.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-20.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-40.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-29.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-58.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-40.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-80.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "76x76",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-76.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "76x76",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-152.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "83.5x83.5",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-167.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "1024x1024",
|
||||
"idiom" : "ios-marketing",
|
||||
"filename" : "Ramotion1024.png",
|
||||
"scale" : "1x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
},
|
||||
"properties" : {
|
||||
"pre-rendered" : true
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 464 B |
|
After Width: | Height: | Size: 618 B |
|
After Width: | Height: | Size: 834 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -1,7 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="8150" systemVersion="15A204g" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" initialViewController="01J-lp-oVM">
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13771" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
|
||||
<device id="retina4_7" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="8122"/>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13772"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--View Controller-->
|
||||
@@ -13,15 +18,35 @@
|
||||
<viewControllerLayoutGuide type="bottom" id="xb3-aO-Qok"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<animations/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" Copyright (c) 2018 Ramotion. All rights reserved." textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="9MI-zG-4vW">
|
||||
<rect key="frame" x="16" y="630" width="343" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.96862745100000003" green="0.96862745100000003" blue="0.96862745100000003" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Circle Menu" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VWz-1T-4Oe">
|
||||
<rect key="frame" x="123" y="319" width="129" height="30"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="25"/>
|
||||
<color key="textColor" red="0.96862745100000003" green="0.96862745100000003" blue="0.96862745100000003" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.058823529409999999" green="0.078431372550000003" blue="0.1529411765" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="trailing" secondItem="9MI-zG-4vW" secondAttribute="trailing" constant="16" id="0Nd-zV-ifm"/>
|
||||
<constraint firstItem="VWz-1T-4Oe" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="AUS-9v-IDH"/>
|
||||
<constraint firstItem="xb3-aO-Qok" firstAttribute="top" secondItem="9MI-zG-4vW" secondAttribute="bottom" constant="20" id="FNC-OT-bh6"/>
|
||||
<constraint firstItem="9MI-zG-4vW" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" constant="16" id="GKi-1N-UzF"/>
|
||||
<constraint firstItem="VWz-1T-4Oe" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="j7f-9j-flx"/>
|
||||
</constraints>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="53" y="375"/>
|
||||
<point key="canvasLocation" x="52" y="374.66266866566718"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
||||
|
||||
@@ -1,25 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="9532" systemVersion="15D21" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="9530"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11161"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--Delegate-->
|
||||
<scene sceneID="tne-QT-ifu">
|
||||
<objects>
|
||||
<viewController id="BYZ-38-t0r" customClass="ViewController" customModule="CircleMenu" customModuleProvider="target" sceneMemberID="viewController">
|
||||
<viewController id="BYZ-38-t0r" customClass="ViewController" customModule="CircleMenuDemo" customModuleProvider="target" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
|
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eLo-Wn-oPF" customClass="CircleMenu" customModule="CircleMenu" customModuleProvider="target">
|
||||
<rect key="frame" x="270" y="270" width="60" height="60"/>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eLo-Wn-oPF" customClass="CircleMenu" customModule="CircleMenuDemo" customModuleProvider="target">
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="60" id="HWk-Xa-dX7"/>
|
||||
<constraint firstAttribute="height" constant="60" id="Xnk-f6-9Ej"/>
|
||||
@@ -48,7 +47,7 @@
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.058823529411764705" green="0.078431372549019607" blue="0.15294117647058825" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<color key="backgroundColor" red="0.058823529411764705" green="0.078431372549019607" blue="0.15294117647058825" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<constraints>
|
||||
<constraint firstItem="eLo-Wn-oPF" firstAttribute="centerY" secondItem="8bC-Xf-vdC" secondAttribute="centerY" id="hwK-4W-0MQ"/>
|
||||
<constraint firstItem="eLo-Wn-oPF" firstAttribute="centerX" secondItem="8bC-Xf-vdC" secondAttribute="centerX" id="tQC-3B-L2F"/>
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// CircleMenu.h
|
||||
// CircleMenu
|
||||
//
|
||||
// Created by Alex K. on 01/06/16.
|
||||
// Copyright © 2016 Alex K. All rights reserved.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
//! Project version number for CircleMenu.
|
||||
FOUNDATION_EXPORT double CircleMenuVersionNumber;
|
||||
|
||||
//! Project version string for CircleMenu.
|
||||
FOUNDATION_EXPORT const unsigned char CircleMenuVersionString[];
|
||||
|
||||
// In this header, you should import all the public headers of your framework using statements like #import <CircleMenu/PublicHeader.h>
|
||||
|
||||
|
||||
@@ -13,31 +13,21 @@
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UIStatusBarHidden</key>
|
||||
<true/>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UIStatusBarStyle</key>
|
||||
<string>UIStatusBarStyleLightContent</string>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<false/>
|
||||
</dict>
|
||||
|
||||
@@ -9,67 +9,60 @@
|
||||
import UIKit
|
||||
|
||||
extension UIColor {
|
||||
static func color(red: Int, green: Int, blue: Int, alpha: Float) -> UIColor {
|
||||
static func color(_ red: Int, green: Int, blue: Int, alpha: Float) -> UIColor {
|
||||
return UIColor(
|
||||
colorLiteralRed: Float(1.0) / Float(255.0) * Float(red),
|
||||
green: Float(1.0) / Float(255.0) * Float(green),
|
||||
blue: Float(1.0) / Float(255.0) * Float(blue),
|
||||
alpha: alpha)
|
||||
red: 1.0 / 255.0 * CGFloat(red),
|
||||
green: 1.0 / 255.0 * CGFloat(green),
|
||||
blue: 1.0 / 255.0 * CGFloat(blue),
|
||||
alpha: CGFloat(alpha))
|
||||
}
|
||||
}
|
||||
|
||||
class ViewController: UIViewController, CircleMenuDelegate {
|
||||
|
||||
// let colors = [UIColor.redColor(), UIColor.grayColor(), UIColor.greenColor(), UIColor.purpleColor()]
|
||||
// let colors = [UIColor.redColor(), UIColor.grayColor(), UIColor.greenColor(), UIColor.purpleColor()]
|
||||
let items: [(icon: String, color: UIColor)] = [
|
||||
("icon_home", UIColor(red:0.19, green:0.57, blue:1, alpha:1)),
|
||||
("icon_search", UIColor(red:0.22, green:0.74, blue:0, alpha:1)),
|
||||
("notifications-btn", UIColor(red:0.96, green:0.23, blue:0.21, alpha:1)),
|
||||
("settings-btn", UIColor(red:0.51, green:0.15, blue:1, alpha:1)),
|
||||
("nearby-btn", UIColor(red:1, green:0.39, blue:0, alpha:1)),
|
||||
]
|
||||
("icon_home", UIColor(red: 0.19, green: 0.57, blue: 1, alpha: 1)),
|
||||
("icon_search", UIColor(red: 0.22, green: 0.74, blue: 0, alpha: 1)),
|
||||
("notifications-btn", UIColor(red: 0.96, green: 0.23, blue: 0.21, alpha: 1)),
|
||||
("settings-btn", UIColor(red: 0.51, green: 0.15, blue: 1, alpha: 1)),
|
||||
("nearby-btn", UIColor(red: 1, green: 0.39, blue: 0, alpha: 1))
|
||||
]
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
|
||||
// add button
|
||||
|
||||
// let button = CircleMenu(
|
||||
// frame: CGRect(x: 200, y: 200, width: 50, height: 50),
|
||||
// normalIcon:"icon_menu",
|
||||
// selectedIcon:"icon_close",
|
||||
// buttonsCount: 4,
|
||||
// duration: 4,
|
||||
// distance: 120)
|
||||
// button.backgroundColor = UIColor.lightGrayColor()
|
||||
// button.delegate = self
|
||||
// button.layer.cornerRadius = button.frame.size.width / 2.0
|
||||
// view.addSubview(button)
|
||||
|
||||
// let button = CircleMenu(
|
||||
// frame: CGRect(x: 200, y: 200, width: 50, height: 50),
|
||||
// normalIcon:"icon_menu",
|
||||
// selectedIcon:"icon_close",
|
||||
// buttonsCount: 4,
|
||||
// duration: 4,
|
||||
// distance: 120)
|
||||
// button.backgroundColor = UIColor.lightGrayColor()
|
||||
// button.delegate = self
|
||||
// button.layer.cornerRadius = button.frame.size.width / 2.0
|
||||
// view.addSubview(button)
|
||||
}
|
||||
|
||||
override func didReceiveMemoryWarning() {
|
||||
super.didReceiveMemoryWarning()
|
||||
// Dispose of any resources that can be recreated.
|
||||
}
|
||||
|
||||
|
||||
// MARK: <CircleMenuDelegate>
|
||||
|
||||
func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int) {
|
||||
func circleMenu(_: CircleMenu, willDisplay button: UIButton, atIndex: Int) {
|
||||
button.backgroundColor = items[atIndex].color
|
||||
button.setImage(UIImage(imageLiteral: items[atIndex].icon), forState: .Normal)
|
||||
|
||||
button.setImage(UIImage(named: items[atIndex].icon), for: .normal)
|
||||
|
||||
// set highlited image
|
||||
let highlightedImage = UIImage(imageLiteral: items[atIndex].icon).imageWithRenderingMode(.AlwaysTemplate)
|
||||
button.setImage(highlightedImage, forState: .Highlighted)
|
||||
button.tintColor = UIColor.init(colorLiteralRed: 0, green: 0, blue: 0, alpha: 0.3)
|
||||
let highlightedImage = UIImage(named: items[atIndex].icon)?.withRenderingMode(.alwaysTemplate)
|
||||
button.setImage(highlightedImage, for: .highlighted)
|
||||
button.tintColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.3)
|
||||
}
|
||||
|
||||
func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: CircleMenuButton, atIndex: Int) {
|
||||
func circleMenu(_: CircleMenu, buttonWillSelected _: UIButton, atIndex: Int) {
|
||||
print("button will selected: \(atIndex)")
|
||||
}
|
||||
|
||||
func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: CircleMenuButton, atIndex: Int) {
|
||||
func circleMenu(_: CircleMenu, buttonDidSelected _: UIButton, atIndex: Int) {
|
||||
print("button did selected: \(atIndex)")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,356 +26,525 @@ import UIKit
|
||||
|
||||
// MARK: helpers
|
||||
|
||||
@warn_unused_result
|
||||
public func Init<Type>(value: Type, @noescape block: (object: Type) -> Void) -> Type {
|
||||
block(object: value)
|
||||
return value
|
||||
func customize<Type>(_ value: Type, block: (_ object: Type) -> Void) -> Type {
|
||||
block(value)
|
||||
return value
|
||||
}
|
||||
|
||||
// MARK: Protocol
|
||||
|
||||
/**
|
||||
* CircleMenuDelegate
|
||||
*/
|
||||
@objc public protocol CircleMenuDelegate {
|
||||
|
||||
// don't change button.tag
|
||||
optional func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int)
|
||||
|
||||
// call before animation
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: CircleMenuButton, atIndex: Int)
|
||||
|
||||
// call after animation
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: CircleMenuButton, atIndex: Int)
|
||||
|
||||
/**
|
||||
Tells the delegate the circle menu is about to draw a button for a particular index.
|
||||
|
||||
- parameter circleMenu: The circle menu object informing the delegate of this impending event.
|
||||
- parameter button: A circle menu button object that circle menu is going to use when drawing the row. Don't change button.tag
|
||||
- parameter atIndex: An button index.
|
||||
*/
|
||||
@objc optional func circleMenu(_ circleMenu: CircleMenu, willDisplay button: UIButton, atIndex: Int)
|
||||
|
||||
/**
|
||||
Tells the delegate that a specified index is about to be selected.
|
||||
|
||||
- parameter circleMenu: A circle menu object informing the delegate about the impending selection.
|
||||
- parameter button: A selected circle menu button. Don't change button.tag
|
||||
- parameter atIndex: Selected button index
|
||||
*/
|
||||
@objc optional func circleMenu(_ circleMenu: CircleMenu, buttonWillSelected button: UIButton, atIndex: Int)
|
||||
|
||||
/**
|
||||
Tells the delegate that the specified index is now selected.
|
||||
|
||||
- parameter circleMenu: A circle menu object informing the delegate about the new index selection.
|
||||
- parameter button: A selected circle menu button. Don't change button.tag
|
||||
- parameter atIndex: Selected button index
|
||||
*/
|
||||
@objc optional func circleMenu(_ circleMenu: CircleMenu, buttonDidSelected button: UIButton, atIndex: Int)
|
||||
|
||||
/**
|
||||
Tells the delegate that the menu was collapsed - the cancel action. Fires immediately on button press
|
||||
|
||||
- parameter circleMenu: A circle menu object informing the delegate about the new index selection.
|
||||
*/
|
||||
@objc optional func menuCollapsed(_ circleMenu: CircleMenu)
|
||||
|
||||
/**
|
||||
Tells the delegate that the menu was opened. Fires immediately on button press
|
||||
|
||||
- parameter circleMenu: A circle menu object informing the delegate about the new index selection.
|
||||
*/
|
||||
@objc optional func menuOpened(_ circleMenu: CircleMenu)
|
||||
}
|
||||
|
||||
// MARK: CircleMenu
|
||||
public class CircleMenu: UIButton {
|
||||
|
||||
// MARK: properties
|
||||
|
||||
@IBInspectable public var buttonsCount: Int = 3
|
||||
@IBInspectable public var duration: Double = 2 // circle animation duration
|
||||
@IBInspectable public var distance: Float = 100 // distance between center button and buttons
|
||||
@IBInspectable public var showDelay: Double = 0 // delay between show buttons
|
||||
|
||||
|
||||
@IBOutlet weak public var delegate: AnyObject? //CircleMenuDelegate?
|
||||
|
||||
var buttons: [CircleMenuButton]?
|
||||
|
||||
private var customNormalIconView: UIImageView!
|
||||
private var customSelectedIconView: UIImageView!
|
||||
|
||||
// MARK: life cycle
|
||||
public init(frame: CGRect, normalIcon: String?, selectedIcon: String?, buttonsCount: Int = 3, duration: Double = 2,
|
||||
distance: Float = 100) {
|
||||
super.init(frame: frame)
|
||||
|
||||
if let icon = normalIcon {
|
||||
setImage(UIImage(named: icon), forState: .Normal)
|
||||
}
|
||||
|
||||
if let icon = selectedIcon {
|
||||
setImage(UIImage(named: icon), forState: .Selected)
|
||||
}
|
||||
|
||||
self.buttonsCount = buttonsCount
|
||||
self.duration = duration
|
||||
self.distance = distance
|
||||
|
||||
commonInit()
|
||||
}
|
||||
|
||||
required public init?(coder aDecoder: NSCoder) {
|
||||
super.init(coder: aDecoder)
|
||||
|
||||
commonInit()
|
||||
}
|
||||
|
||||
private func commonInit() {
|
||||
addActions()
|
||||
|
||||
customNormalIconView = addCustomImageView(state: .Normal)
|
||||
|
||||
customSelectedIconView = addCustomImageView(state: .Selected)
|
||||
if customSelectedIconView != nil {
|
||||
customSelectedIconView.alpha = 0
|
||||
|
||||
/// A Button object with pop ups buttons
|
||||
open class CircleMenu: UIButton {
|
||||
|
||||
// MARK: properties
|
||||
|
||||
/// Buttons count
|
||||
@IBInspectable open var buttonsCount: Int = 3
|
||||
/// Circle animation duration
|
||||
@IBInspectable open var duration: Double = 2
|
||||
/// Distance between center button and buttons
|
||||
@IBInspectable open var distance: Float = 100
|
||||
/// Delay between show buttons
|
||||
@IBInspectable open var showDelay: Double = 0
|
||||
/// Start angle of the circle
|
||||
@IBInspectable open var startAngle: Float = 0
|
||||
/// End angle of the circle
|
||||
@IBInspectable open var endAngle: Float = 360
|
||||
|
||||
// Pop buttons radius, if nil use center button size
|
||||
open var subButtonsRadius: CGFloat?
|
||||
|
||||
// Show buttons event
|
||||
open var showButtonsEvent: UIControl.Event = UIControl.Event.touchUpInside {
|
||||
didSet {
|
||||
addActions(newEvent: showButtonsEvent, oldEvent: oldValue)
|
||||
}
|
||||
}
|
||||
setImage(UIImage(), forState: .Normal)
|
||||
setImage(UIImage(), forState: .Selected)
|
||||
}
|
||||
|
||||
// MARK: create
|
||||
|
||||
private func createButtons() -> [CircleMenuButton] {
|
||||
var buttons = [CircleMenuButton]()
|
||||
|
||||
let step: Float = 360.0 / Float(self.buttonsCount)
|
||||
for index in 0..<self.buttonsCount {
|
||||
|
||||
let angle: Float = Float(index) * step
|
||||
let distance = Float(self.bounds.size.height/2.0)
|
||||
let button = Init(CircleMenuButton(size: self.bounds.size, circleMenu: self, distance:distance, angle: angle)) {
|
||||
$0.tag = index
|
||||
$0.addTarget(self, action: "buttonHandler:", forControlEvents: UIControlEvents.TouchUpInside)
|
||||
$0.alpha = 0
|
||||
}
|
||||
buttons.append(button)
|
||||
|
||||
/// The object that acts as the delegate of the circle menu.
|
||||
@IBOutlet open weak var delegate: AnyObject? // CircleMenuDelegate?
|
||||
|
||||
var buttons: [UIButton]?
|
||||
weak var platform: UIView?
|
||||
|
||||
public var customNormalIconView: UIImageView?
|
||||
public var customSelectedIconView: UIImageView?
|
||||
|
||||
/**
|
||||
Initializes and returns a circle menu object.
|
||||
|
||||
- parameter frame: A rectangle specifying the initial location and size of the circle menu in its superview’s coordinates.
|
||||
- parameter normalIcon: The image to use for the specified normal state.
|
||||
- parameter selectedIcon: The image to use for the specified selected state.
|
||||
- parameter buttonsCount: The number of buttons.
|
||||
- parameter duration: The duration, in seconds, of the animation.
|
||||
- parameter distance: Distance between center button and sub buttons.
|
||||
|
||||
- returns: A newly created circle menu.
|
||||
*/
|
||||
public init(frame: CGRect,
|
||||
normalIcon: String?,
|
||||
selectedIcon: String?,
|
||||
buttonsCount: Int = 3,
|
||||
duration: Double = 2,
|
||||
distance: Float = 100) {
|
||||
super.init(frame: frame)
|
||||
|
||||
if let icon = normalIcon {
|
||||
setImage(UIImage(named: icon), for: .normal)
|
||||
}
|
||||
|
||||
if let icon = selectedIcon {
|
||||
setImage(UIImage(named: icon), for: .selected)
|
||||
}
|
||||
|
||||
self.buttonsCount = buttonsCount
|
||||
self.duration = duration
|
||||
self.distance = distance
|
||||
|
||||
commonInit()
|
||||
}
|
||||
return buttons
|
||||
}
|
||||
|
||||
private func addCustomImageView(state state: UIControlState) -> UIImageView? {
|
||||
guard let image = imageForState(state) else {
|
||||
return nil
|
||||
|
||||
public required init?(coder aDecoder: NSCoder) {
|
||||
super.init(coder: aDecoder)
|
||||
|
||||
commonInit()
|
||||
}
|
||||
|
||||
let iconView = Init(UIImageView(image: image)) {
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
$0.contentMode = .Center
|
||||
$0.userInteractionEnabled = false
|
||||
|
||||
fileprivate func commonInit() {
|
||||
addActions(newEvent: showButtonsEvent)
|
||||
|
||||
customNormalIconView = addCustomImageView(state: .normal)
|
||||
|
||||
customSelectedIconView = addCustomImageView(state: .selected)
|
||||
customSelectedIconView?.alpha = 0
|
||||
|
||||
setImage(UIImage(), for: .normal)
|
||||
setImage(UIImage(), for: .selected)
|
||||
}
|
||||
addSubview(iconView)
|
||||
|
||||
// added constraints
|
||||
iconView.addConstraint(NSLayoutConstraint(item: iconView, attribute: .Height, relatedBy: .Equal, toItem: nil,
|
||||
attribute: .Height, multiplier: 1, constant: bounds.size.height))
|
||||
|
||||
iconView.addConstraint(NSLayoutConstraint(item: iconView, attribute: .Width, relatedBy: .Equal, toItem: nil,
|
||||
attribute: .Width, multiplier: 1, constant: bounds.size.width))
|
||||
|
||||
addConstraint(NSLayoutConstraint(item: self, attribute: .CenterX, relatedBy: .Equal, toItem: iconView,
|
||||
attribute: .CenterX, multiplier: 1, constant:0))
|
||||
|
||||
addConstraint(NSLayoutConstraint(item: self, attribute: .CenterY, relatedBy: .Equal, toItem: iconView,
|
||||
attribute: .CenterY, multiplier: 1, constant:0))
|
||||
|
||||
return iconView
|
||||
}
|
||||
|
||||
// MARK: configure
|
||||
|
||||
private func addActions() {
|
||||
self.addTarget(self, action: "onTap", forControlEvents: UIControlEvents.TouchUpInside)
|
||||
}
|
||||
|
||||
// MARK: helpers
|
||||
|
||||
public func buttonsIsShown() -> Bool {
|
||||
guard let buttons = self.buttons else {
|
||||
return false
|
||||
|
||||
// MARK: methods
|
||||
|
||||
/**
|
||||
Hide button
|
||||
|
||||
- parameter duration: The duration, in seconds, of the animation.
|
||||
- parameter hideDelay: The time to delay, in seconds.
|
||||
*/
|
||||
open func hideButtons(_ duration: Double, hideDelay: Double = 0) {
|
||||
if buttons == nil {
|
||||
return
|
||||
}
|
||||
|
||||
buttonsAnimationIsShow(isShow: false, duration: duration, hideDelay: hideDelay)
|
||||
|
||||
tapBounceAnimation(duration: 0.5)
|
||||
tapRotatedAnimation(0.3, isSelected: false)
|
||||
}
|
||||
|
||||
for button in buttons {
|
||||
if button.alpha == 0 {
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
Check is sub buttons showed
|
||||
*/
|
||||
open func buttonsIsShown() -> Bool {
|
||||
guard let buttons = self.buttons else {
|
||||
return false
|
||||
}
|
||||
|
||||
for button in buttons {
|
||||
if button.alpha == 0 {
|
||||
return false
|
||||
}
|
||||
}
|
||||
return true
|
||||
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
// MARK: actions
|
||||
|
||||
func onTap() {
|
||||
if buttonsIsShown() == false {
|
||||
buttons = createButtons()
|
||||
|
||||
open override func removeFromSuperview() {
|
||||
if self.platform?.superview != nil { self.platform?.removeFromSuperview() }
|
||||
super.removeFromSuperview()
|
||||
}
|
||||
let isShow = !buttonsIsShown()
|
||||
let duration = isShow ? 0.5 : 0.2
|
||||
buttonsAnimationIsShow(isShow: isShow, duration: duration)
|
||||
|
||||
tapBounceAnimation()
|
||||
tapRotatedAnimation(0.3, isSelected: isShow)
|
||||
}
|
||||
|
||||
func buttonHandler(sender: CircleMenuButton) {
|
||||
delegate?.circleMenu?(self, buttonWillSelected: sender, atIndex: sender.tag)
|
||||
|
||||
let circle = CircleMenuLoader(radius: CGFloat(distance), strokeWidth: bounds.size.height, circleMenu: self,
|
||||
color: sender.backgroundColor)
|
||||
|
||||
if let container = sender.container { // rotation animation
|
||||
sender.rotationLayerAnimation(container.angleZ + 360, duration: duration)
|
||||
container.superview?.bringSubviewToFront(container)
|
||||
|
||||
// MARK: create
|
||||
|
||||
fileprivate func createButtons(platform: UIView) -> [UIButton] {
|
||||
var buttons = [UIButton]()
|
||||
|
||||
let step = getArcStep()
|
||||
for index in 0 ..< buttonsCount {
|
||||
|
||||
let angle: Float = startAngle + Float(index) * step
|
||||
let distance = Float(bounds.size.height / 2.0)
|
||||
let buttonSize: CGSize
|
||||
if let subButtonsRadius = self.subButtonsRadius {
|
||||
buttonSize = CGSize(width: subButtonsRadius * 2, height: subButtonsRadius * 2)
|
||||
} else {
|
||||
buttonSize = bounds.size
|
||||
}
|
||||
let button = customize(CircleMenuButton(size: buttonSize, platform: platform, distance: distance, angle: angle)) {
|
||||
$0.tag = index
|
||||
$0.addTarget(self, action: #selector(CircleMenu.buttonHandler(_:)), for: UIControl.Event.touchUpInside)
|
||||
$0.alpha = 0
|
||||
}
|
||||
buttons.append(button)
|
||||
}
|
||||
return buttons
|
||||
}
|
||||
|
||||
if let aButtons = buttons {
|
||||
circle.fillAnimation(duration, startAngle: -90 + Float(360 / aButtons.count) * Float(sender.tag))
|
||||
circle.hideAnimation(0.5, delay: duration)
|
||||
|
||||
hideCenterButton(duration: 0.3)
|
||||
|
||||
buttonsAnimationIsShow(isShow: false, duration: 0, hideDelay: duration)
|
||||
showCenterButton(duration: 0.525, delay: duration)
|
||||
|
||||
if customNormalIconView != nil && customSelectedIconView != nil {
|
||||
let dispatchTime: dispatch_time_t = dispatch_time(
|
||||
DISPATCH_TIME_NOW,
|
||||
Int64(duration * Double(NSEC_PER_SEC)))
|
||||
|
||||
fileprivate func addCustomImageView(state: UIControl.State) -> UIImageView? {
|
||||
guard let image = image(for: state) else {
|
||||
return nil
|
||||
}
|
||||
|
||||
let iconView = customize(UIImageView(image: image)) {
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
$0.contentMode = .center
|
||||
$0.isUserInteractionEnabled = false
|
||||
}
|
||||
addSubview(iconView)
|
||||
|
||||
// added constraints
|
||||
iconView.addConstraint(NSLayoutConstraint(item: iconView, attribute: .height, relatedBy: .equal, toItem: nil,
|
||||
attribute: .height, multiplier: 1, constant: bounds.size.height))
|
||||
|
||||
iconView.addConstraint(NSLayoutConstraint(item: iconView, attribute: .width, relatedBy: .equal, toItem: nil,
|
||||
attribute: .width, multiplier: 1, constant: bounds.size.width))
|
||||
|
||||
addConstraint(NSLayoutConstraint(item: self, attribute: .centerX, relatedBy: .equal, toItem: iconView,
|
||||
attribute: .centerX, multiplier: 1, constant: 0))
|
||||
|
||||
addConstraint(NSLayoutConstraint(item: self, attribute: .centerY, relatedBy: .equal, toItem: iconView,
|
||||
attribute: .centerY, multiplier: 1, constant: 0))
|
||||
|
||||
return iconView
|
||||
}
|
||||
|
||||
fileprivate func createPlatform() -> UIView {
|
||||
let platform = customize(UIView(frame: .zero)) {
|
||||
$0.backgroundColor = .clear
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
}
|
||||
superview?.insertSubview(platform, belowSubview: self)
|
||||
|
||||
// constraints
|
||||
let sizeConstraints = [NSLayoutConstraint.Attribute.width, .height].map {
|
||||
NSLayoutConstraint(item: platform,
|
||||
attribute: $0,
|
||||
relatedBy: .equal,
|
||||
toItem: nil,
|
||||
attribute: $0,
|
||||
multiplier: 1,
|
||||
constant: CGFloat(distance * Float(2.0)))
|
||||
}
|
||||
platform.addConstraints(sizeConstraints)
|
||||
|
||||
let centerConstraints = [NSLayoutConstraint.Attribute.centerX, .centerY].map {
|
||||
NSLayoutConstraint(item: self,
|
||||
attribute: $0,
|
||||
relatedBy: .equal,
|
||||
toItem: platform,
|
||||
attribute: $0,
|
||||
multiplier: 1,
|
||||
constant: 0)
|
||||
}
|
||||
superview?.addConstraints(centerConstraints)
|
||||
|
||||
return platform
|
||||
}
|
||||
|
||||
// MARK: configure
|
||||
|
||||
fileprivate func addActions(newEvent: UIControl.Event, oldEvent: UIControl.Event? = nil) {
|
||||
if let oldEvent = oldEvent { removeTarget(self, action: #selector(CircleMenu.onTap), for: oldEvent) }
|
||||
addTarget(self, action: #selector(CircleMenu.onTap), for: newEvent)
|
||||
}
|
||||
|
||||
/**
|
||||
Retrieves the incremental lengths between buttons. If the arc length is 360 degrees or more, the increments
|
||||
will evenly space out in a full circle. If the arc length is less than 360 degrees, the last button will be
|
||||
placed on the endAngle.
|
||||
*/
|
||||
fileprivate func getArcStep() -> Float {
|
||||
var arcLength = endAngle - startAngle
|
||||
var stepCount = buttonsCount
|
||||
|
||||
if arcLength < 360 {
|
||||
stepCount -= 1
|
||||
} else if arcLength > 360 {
|
||||
arcLength = 360
|
||||
}
|
||||
|
||||
return arcLength / Float(stepCount)
|
||||
}
|
||||
|
||||
// MARK: actions
|
||||
|
||||
private var isBounceAnimating: Bool = false
|
||||
|
||||
@objc func onTap() {
|
||||
guard isBounceAnimating == false else { return }
|
||||
isBounceAnimating = true
|
||||
|
||||
if buttonsIsShown() == false {
|
||||
let platform = createPlatform()
|
||||
buttons = createButtons(platform: platform)
|
||||
self.platform = platform
|
||||
DispatchQueue.main.asyncAfter(deadline: .now()) {
|
||||
self.delegate?.menuOpened?(self)
|
||||
}
|
||||
}
|
||||
let isShow = !buttonsIsShown()
|
||||
let duration = isShow ? 0.5 : 0.2
|
||||
buttonsAnimationIsShow(isShow: isShow, duration: duration)
|
||||
|
||||
tapBounceAnimation(duration: 0.5) { [weak self] _ in self?.isBounceAnimating = false }
|
||||
tapRotatedAnimation(0.3, isSelected: isShow)
|
||||
}
|
||||
|
||||
@objc func buttonHandler(_ sender: CircleMenuButton) {
|
||||
guard let platform = self.platform else { return }
|
||||
|
||||
delegate?.circleMenu?(self, buttonWillSelected: sender, atIndex: sender.tag)
|
||||
|
||||
dispatch_after(dispatchTime, dispatch_get_main_queue(), {
|
||||
self.delegate?.circleMenu?(self, buttonDidSelected: sender, atIndex: sender.tag)
|
||||
let strokeWidth: CGFloat
|
||||
if let radius = self.subButtonsRadius {
|
||||
strokeWidth = radius * 2
|
||||
} else {
|
||||
strokeWidth = bounds.size.height
|
||||
}
|
||||
|
||||
let circle = CircleMenuLoader(radius: CGFloat(distance),
|
||||
strokeWidth: strokeWidth,
|
||||
platform: platform,
|
||||
color: sender.backgroundColor)
|
||||
|
||||
if let container = sender.container { // rotation animation
|
||||
sender.rotationAnimation(container.angleZ + 360, duration: duration)
|
||||
container.superview?.bringSubviewToFront(container)
|
||||
}
|
||||
|
||||
let step = getArcStep()
|
||||
circle.fillAnimation(duration, startAngle: -90 + startAngle + step * Float(sender.tag)) { [weak self] in
|
||||
self?.buttons?.forEach { $0.alpha = 0 }
|
||||
}
|
||||
circle.hideAnimation(0.5, delay: duration) { [weak self] in
|
||||
if self?.platform?.superview != nil { self?.platform?.removeFromSuperview() }
|
||||
}
|
||||
|
||||
hideCenterButton(duration: 0.3)
|
||||
showCenterButton(duration: 0.525, delay: duration)
|
||||
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + duration, execute: {
|
||||
self.delegate?.circleMenu?(self, buttonDidSelected: sender, atIndex: sender.tag)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: animations
|
||||
|
||||
fileprivate func buttonsAnimationIsShow(isShow: Bool, duration: Double, hideDelay: Double = 0) {
|
||||
guard let buttons = self.buttons else {
|
||||
return
|
||||
}
|
||||
|
||||
let step = getArcStep()
|
||||
for index in 0 ..< buttonsCount {
|
||||
guard case let button as CircleMenuButton = buttons[index] else { continue }
|
||||
if isShow == true {
|
||||
delegate?.circleMenu?(self, willDisplay: button, atIndex: index)
|
||||
let angle: Float = startAngle + Float(index) * step
|
||||
button.rotatedZ(angle: angle, animated: false, delay: Double(index) * showDelay)
|
||||
button.showAnimation(distance: distance, duration: duration, delay: Double(index) * showDelay)
|
||||
} else {
|
||||
button.hideAnimation(distance: Float(bounds.size.height / 2.0), duration: duration, delay: hideDelay)
|
||||
}
|
||||
}
|
||||
if isShow == false { // hide buttons and remove
|
||||
self.buttons = nil
|
||||
delegate?.menuCollapsed?(self)
|
||||
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + duration) {
|
||||
if self.platform?.superview != nil { self.platform?.removeFromSuperview() }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: animations
|
||||
|
||||
private func buttonsAnimationIsShow(isShow isShow: Bool, duration: Double, hideDelay: Double = 0) {
|
||||
guard let buttons = self.buttons else {
|
||||
return
|
||||
|
||||
fileprivate func tapBounceAnimation(duration: TimeInterval, completion: ((Bool)->())? = nil) {
|
||||
transform = CGAffineTransform(scaleX: 0.9, y: 0.9)
|
||||
UIView.animate(withDuration: duration, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 5,
|
||||
options: UIView.AnimationOptions.curveLinear,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransform(scaleX: 1, y: 1)
|
||||
},
|
||||
completion: completion)
|
||||
}
|
||||
|
||||
let step: Float = 360.0 / Float(self.buttonsCount)
|
||||
for index in 0..<self.buttonsCount {
|
||||
let button = buttons[index]
|
||||
let angle: Float = Float(index) * step
|
||||
if isShow == true {
|
||||
delegate?.circleMenu?(self, willDisplay: button, atIndex: index)
|
||||
|
||||
button.rotatedZ(angle: angle, animated: false, delay: Double(index) * showDelay)
|
||||
button.showAnimation(distance: distance, duration: duration, delay: Double(index) * showDelay)
|
||||
} else {
|
||||
button.hideAnimation(
|
||||
distance: Float(self.bounds.size.height / 2.0),
|
||||
duration: duration, delay: hideDelay)
|
||||
}
|
||||
|
||||
fileprivate func tapRotatedAnimation(_ duration: Float, isSelected: Bool) {
|
||||
|
||||
let addAnimations: (_ view: UIImageView, _ isShow: Bool) -> Void = { view, isShow in
|
||||
var toAngle: Float = 180.0
|
||||
var fromAngle: Float = 0
|
||||
var fromScale = 1.0
|
||||
var toScale = 0.2
|
||||
var fromOpacity = 1
|
||||
var toOpacity = 0
|
||||
if isShow == true {
|
||||
toAngle = 0
|
||||
fromAngle = -180
|
||||
fromScale = 0.2
|
||||
toScale = 1.0
|
||||
fromOpacity = 0
|
||||
toOpacity = 1
|
||||
}
|
||||
|
||||
let rotation = customize(CABasicAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = TimeInterval(duration)
|
||||
$0.toValue = (toAngle.degrees)
|
||||
$0.fromValue = (fromAngle.degrees)
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
}
|
||||
let fade = customize(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = TimeInterval(duration)
|
||||
$0.fromValue = fromOpacity
|
||||
$0.toValue = toOpacity
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
$0.fillMode = CAMediaTimingFillMode.forwards
|
||||
$0.isRemovedOnCompletion = false
|
||||
}
|
||||
let scale = customize(CABasicAnimation(keyPath: "transform.scale")) {
|
||||
$0.duration = TimeInterval(duration)
|
||||
$0.toValue = toScale
|
||||
$0.fromValue = fromScale
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
}
|
||||
|
||||
view.layer.add(rotation, forKey: nil)
|
||||
view.layer.add(fade, forKey: nil)
|
||||
view.layer.add(scale, forKey: nil)
|
||||
}
|
||||
|
||||
if let customNormalIconView = self.customNormalIconView {
|
||||
addAnimations(customNormalIconView, !isSelected)
|
||||
}
|
||||
if let customSelectedIconView = self.customSelectedIconView {
|
||||
addAnimations(customSelectedIconView, isSelected)
|
||||
}
|
||||
|
||||
self.isSelected = isSelected
|
||||
alpha = isSelected ? 0.3 : 1
|
||||
}
|
||||
if isShow == false { // hide buttons and remove
|
||||
self.buttons = nil
|
||||
|
||||
fileprivate func hideCenterButton(duration: Double, delay: Double = 0) {
|
||||
UIView.animate(withDuration: TimeInterval(duration), delay: TimeInterval(delay),
|
||||
options: UIView.AnimationOptions.curveEaseOut,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransform(scaleX: 0.001, y: 0.001)
|
||||
}, completion: nil)
|
||||
}
|
||||
}
|
||||
|
||||
private func tapBounceAnimation() {
|
||||
self.transform = CGAffineTransformMakeScale(0.9, 0.9)
|
||||
UIView.animateWithDuration(0.5, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 5,
|
||||
options: UIViewAnimationOptions.CurveLinear,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransformMakeScale(1, 1)
|
||||
},
|
||||
completion: nil)
|
||||
}
|
||||
|
||||
private func tapRotatedAnimation(duration: Float, isSelected: Bool) {
|
||||
|
||||
let addAnimations: (view: UIImageView, isShow: Bool) -> () = { (view, isShow) in
|
||||
var toAngle: Float = 180.0
|
||||
var fromAngle: Float = 0
|
||||
var fromScale = 1.0
|
||||
var toScale = 0.2
|
||||
var fromOpacity = 1
|
||||
var toOpacity = 0
|
||||
if isShow == true {
|
||||
toAngle = 0
|
||||
fromAngle = -180
|
||||
fromScale = 0.2
|
||||
toScale = 1.0
|
||||
fromOpacity = 0
|
||||
toOpacity = 1
|
||||
}
|
||||
|
||||
let rotation = Init(CABasicAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = NSTimeInterval(duration)
|
||||
$0.toValue = (toAngle.degrees)
|
||||
$0.fromValue = (fromAngle.degrees)
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
}
|
||||
let fade = Init(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = NSTimeInterval(duration)
|
||||
$0.fromValue = fromOpacity
|
||||
$0.toValue = toOpacity
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
$0.fillMode = kCAFillModeForwards
|
||||
$0.removedOnCompletion = false
|
||||
}
|
||||
let scale = Init(CABasicAnimation(keyPath: "transform.scale")) {
|
||||
$0.duration = NSTimeInterval(duration)
|
||||
$0.toValue = toScale
|
||||
$0.fromValue = fromScale
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
}
|
||||
|
||||
view.layer.addAnimation(rotation, forKey: nil)
|
||||
view.layer.addAnimation(fade, forKey: nil)
|
||||
view.layer.addAnimation(scale, forKey: nil)
|
||||
}
|
||||
|
||||
if customNormalIconView != nil && customSelectedIconView != nil {
|
||||
addAnimations(view: customNormalIconView, isShow: !isSelected)
|
||||
addAnimations(view: customSelectedIconView, isShow: isSelected)
|
||||
}
|
||||
selected = isSelected
|
||||
self.alpha = isSelected ? 0.3 : 1
|
||||
}
|
||||
|
||||
private func hideCenterButton(duration duration: Double, delay: Double = 0) {
|
||||
UIView.animateWithDuration( NSTimeInterval(duration), delay: NSTimeInterval(delay),
|
||||
options: UIViewAnimationOptions.CurveEaseOut,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransformMakeScale(0.001, 0.001)
|
||||
}, completion: nil)
|
||||
}
|
||||
|
||||
private func showCenterButton(duration duration: Float, delay: Double) {
|
||||
UIView.animateWithDuration( NSTimeInterval(duration), delay: NSTimeInterval(delay), usingSpringWithDamping: 0.78,
|
||||
initialSpringVelocity: 0, options: UIViewAnimationOptions.CurveLinear,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransformMakeScale(1, 1)
|
||||
self.alpha = 1
|
||||
},
|
||||
completion: nil)
|
||||
|
||||
let rotation = Init(CASpringAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = NSTimeInterval(1.5)
|
||||
$0.toValue = (0)
|
||||
$0.fromValue = (Float(-180).degrees)
|
||||
$0.damping = 10
|
||||
|
||||
fileprivate func showCenterButton(duration: Float, delay: Double) {
|
||||
UIView.animate(withDuration: TimeInterval(duration), delay: TimeInterval(delay), usingSpringWithDamping: 0.78,
|
||||
initialSpringVelocity: 0, options: UIView.AnimationOptions.curveLinear,
|
||||
animations: { () -> Void in
|
||||
self.transform = CGAffineTransform(scaleX: 1, y: 1)
|
||||
self.alpha = 1
|
||||
},
|
||||
completion: nil)
|
||||
|
||||
let rotation = customize(CASpringAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = TimeInterval(1.5)
|
||||
$0.toValue = 0
|
||||
$0.fromValue = (Float(-180).degrees)
|
||||
$0.damping = 10
|
||||
$0.initialVelocity = 0
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
|
||||
let fade = customize(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = TimeInterval(0.01)
|
||||
$0.toValue = 0
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
$0.fillMode = CAMediaTimingFillMode.forwards
|
||||
$0.isRemovedOnCompletion = false
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
let show = customize(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = TimeInterval(duration)
|
||||
$0.toValue = 1
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
$0.fillMode = CAMediaTimingFillMode.forwards
|
||||
$0.isRemovedOnCompletion = false
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
|
||||
customNormalIconView?.layer.add(rotation, forKey: nil)
|
||||
customNormalIconView?.layer.add(show, forKey: nil)
|
||||
|
||||
customSelectedIconView?.layer.add(fade, forKey: nil)
|
||||
}
|
||||
let fade = Init(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = NSTimeInterval(0.01)
|
||||
$0.toValue = 0
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
$0.fillMode = kCAFillModeForwards
|
||||
$0.removedOnCompletion = false
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
let show = Init(CABasicAnimation(keyPath: "opacity")) {
|
||||
$0.duration = NSTimeInterval(duration)
|
||||
$0.toValue = 1
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
$0.fillMode = kCAFillModeForwards
|
||||
$0.removedOnCompletion = false
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
|
||||
if customNormalIconView != nil {
|
||||
customNormalIconView.layer.addAnimation(rotation, forKey: nil)
|
||||
customNormalIconView.layer.addAnimation(show, forKey: nil)
|
||||
}
|
||||
|
||||
if customSelectedIconView != nil {
|
||||
customSelectedIconView.layer.addAnimation(fade, forKey: nil)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: extension
|
||||
|
||||
extension Float {
|
||||
var radians: Float {
|
||||
return self * (Float(180) / Float(M_PI))
|
||||
}
|
||||
|
||||
var degrees: Float {
|
||||
return self * Float(M_PI) / 180.0
|
||||
}
|
||||
internal extension Float {
|
||||
var radians: Float {
|
||||
return self * (Float(180) / Float.pi)
|
||||
}
|
||||
|
||||
var degrees: Float {
|
||||
return self * Float.pi / 180.0
|
||||
}
|
||||
}
|
||||
|
||||
extension UIView {
|
||||
|
||||
var angleZ: Float {
|
||||
let radians: Float = atan2(Float(self.transform.b), Float(self.transform.a))
|
||||
return radians.radians
|
||||
}
|
||||
internal extension UIView {
|
||||
|
||||
var angleZ: Float {
|
||||
return atan2(Float(transform.b), Float(transform.a)).radians
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,106 +23,101 @@
|
||||
|
||||
import UIKit
|
||||
|
||||
public class CircleMenuButton: UIButton {
|
||||
internal class CircleMenuButton: UIButton {
|
||||
|
||||
// MARK: properties
|
||||
|
||||
public weak var container: UIView?
|
||||
weak var container: UIView?
|
||||
|
||||
// MARK: life cycle
|
||||
|
||||
init(size: CGSize, circleMenu: CircleMenu, distance: Float, angle: Float = 0) {
|
||||
init(size: CGSize, platform: UIView, distance: Float, angle: Float = 0) {
|
||||
super.init(frame: CGRect(origin: CGPoint(x: 0, y: 0), size: size))
|
||||
|
||||
self.backgroundColor = UIColor(colorLiteralRed: 0.79, green: 0.24, blue: 0.27, alpha: 1)
|
||||
self.layer.cornerRadius = size.height / 2.0
|
||||
backgroundColor = UIColor(red: 0.79, green: 0.24, blue: 0.27, alpha: 1)
|
||||
layer.cornerRadius = size.height / 2.0
|
||||
|
||||
let aContainer = createContainer(CGSize(width: size.width, height:CGFloat(distance)), circleMenu: circleMenu)
|
||||
let aContainer = createContainer(CGSize(width: size.width, height: CGFloat(distance)), platform: platform)
|
||||
|
||||
// hack view for rotate
|
||||
let view = UIView(frame: CGRect(x: 0, y: 0, width: self.bounds.width, height: self.bounds.height))
|
||||
view.backgroundColor = UIColor.clearColor()
|
||||
let view = UIView(frame: CGRect(x: 0, y: 0, width: bounds.width, height: bounds.height))
|
||||
view.backgroundColor = UIColor.clear
|
||||
view.addSubview(self)
|
||||
//...
|
||||
// ...
|
||||
|
||||
aContainer.addSubview(view)
|
||||
container = aContainer
|
||||
|
||||
view.layer.transform = CATransform3DMakeRotation(-CGFloat(angle.degrees), 0, 0, 1)
|
||||
|
||||
self.rotatedZ(angle: angle, animated: false)
|
||||
rotatedZ(angle: angle, animated: false)
|
||||
}
|
||||
|
||||
required public init?(coder aDecoder: NSCoder) {
|
||||
internal required init?(coder _: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
|
||||
// MARK: configure
|
||||
|
||||
private func createContainer(size: CGSize, circleMenu: CircleMenu) -> UIView {
|
||||
|
||||
guard let circleMenuSuperView = circleMenu.superview else {
|
||||
fatalError("wront circle menu")
|
||||
}
|
||||
|
||||
let container = Init(UIView(frame: CGRect(origin: CGPoint(x: 0, y: 0), size: size))) {
|
||||
$0.backgroundColor = UIColor.clearColor()
|
||||
fileprivate func createContainer(_ size: CGSize, platform: UIView) -> UIView {
|
||||
let container = customize(UIView(frame: CGRect(origin: CGPoint(x: 0, y: 0), size: size))) {
|
||||
$0.backgroundColor = UIColor.clear
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
$0.layer.anchorPoint = CGPoint(x: 0.5, y: 1)
|
||||
$0.layer.anchorPoint = CGPoint(x: 0.5, y: 1)
|
||||
}
|
||||
circleMenuSuperView.insertSubview(container, belowSubview: circleMenu)
|
||||
platform.addSubview(container)
|
||||
|
||||
// added constraints
|
||||
let height = NSLayoutConstraint(item: container,
|
||||
attribute: .Height,
|
||||
relatedBy: .Equal,
|
||||
toItem: nil,
|
||||
attribute: .Height,
|
||||
multiplier: 1,
|
||||
constant: size.height)
|
||||
attribute: .height,
|
||||
relatedBy: .equal,
|
||||
toItem: nil,
|
||||
attribute: .height,
|
||||
multiplier: 1,
|
||||
constant: size.height)
|
||||
height.identifier = "height"
|
||||
container.addConstraint(height)
|
||||
|
||||
container.addConstraint(NSLayoutConstraint(item: container,
|
||||
attribute: .Width,
|
||||
relatedBy: .Equal,
|
||||
toItem: nil,
|
||||
attribute: .Width,
|
||||
multiplier: 1,
|
||||
constant: size.width))
|
||||
attribute: .width,
|
||||
relatedBy: .equal,
|
||||
toItem: nil,
|
||||
attribute: .width,
|
||||
multiplier: 1,
|
||||
constant: size.width))
|
||||
|
||||
circleMenuSuperView.addConstraint(NSLayoutConstraint(item: circleMenu,
|
||||
attribute: .CenterX,
|
||||
relatedBy: .Equal,
|
||||
toItem: container,
|
||||
attribute: .CenterX,
|
||||
multiplier: 1,
|
||||
constant:0))
|
||||
platform.addConstraint(NSLayoutConstraint(item: platform,
|
||||
attribute: .centerX,
|
||||
relatedBy: .equal,
|
||||
toItem: container,
|
||||
attribute: .centerX,
|
||||
multiplier: 1,
|
||||
constant: 0))
|
||||
|
||||
circleMenuSuperView.addConstraint(NSLayoutConstraint(item: circleMenu,
|
||||
attribute: .CenterY,
|
||||
relatedBy: .Equal,
|
||||
toItem: container,
|
||||
attribute: .CenterY,
|
||||
multiplier: 1,
|
||||
constant:0))
|
||||
platform.addConstraint(NSLayoutConstraint(item: platform,
|
||||
attribute: .centerY,
|
||||
relatedBy: .equal,
|
||||
toItem: container,
|
||||
attribute: .centerY,
|
||||
multiplier: 1,
|
||||
constant: 0))
|
||||
|
||||
return container
|
||||
}
|
||||
|
||||
// MARK: public
|
||||
// MARK: methods
|
||||
|
||||
public func rotatedZ(angle angle: Float, animated: Bool, duration: Double = 0, delay: Double = 0) {
|
||||
internal func rotatedZ(angle: Float, animated: Bool, duration: Double = 0, delay: Double = 0) {
|
||||
guard let container = self.container else {
|
||||
fatalError("contaner don't create")
|
||||
}
|
||||
|
||||
let rotateTransform = CATransform3DMakeRotation(CGFloat(angle.degrees), 0, 0, 1)
|
||||
if animated {
|
||||
UIView.animateWithDuration(
|
||||
duration,
|
||||
UIView.animate(
|
||||
withDuration: duration,
|
||||
delay: delay,
|
||||
options: UIViewAnimationOptions.CurveEaseInOut,
|
||||
options: UIView.AnimationOptions(),
|
||||
animations: { () -> Void in
|
||||
container.layer.transform = rotateTransform
|
||||
},
|
||||
@@ -135,109 +130,81 @@ public class CircleMenuButton: UIButton {
|
||||
|
||||
// MARK: Animations
|
||||
|
||||
extension CircleMenuButton {
|
||||
internal extension CircleMenuButton {
|
||||
|
||||
public func showAnimation(distance distance: Float, duration: Double, delay: Double = 0) {
|
||||
|
||||
guard let container = self.container else {
|
||||
func showAnimation(distance: Float, duration: Double, delay: Double = 0) {
|
||||
guard let heightConstraint = (self.container?.constraints.filter { $0.identifier == "height" })?.first else {
|
||||
fatalError()
|
||||
}
|
||||
|
||||
let heightConstraint = self.container?.constraints.filter {$0.identifier == "height"}.first
|
||||
transform = CGAffineTransform(scaleX: 0, y: 0)
|
||||
container?.superview?.layoutIfNeeded()
|
||||
|
||||
guard heightConstraint != nil else {
|
||||
return
|
||||
}
|
||||
self.transform = CGAffineTransformMakeScale(0, 0)
|
||||
self.container?.layoutIfNeeded()
|
||||
alpha = 0
|
||||
|
||||
self.alpha = 0
|
||||
|
||||
heightConstraint?.constant = CGFloat(distance)
|
||||
UIView.animateWithDuration(
|
||||
duration,
|
||||
heightConstraint.constant = CGFloat(distance)
|
||||
UIView.animate(
|
||||
withDuration: duration,
|
||||
delay: delay,
|
||||
usingSpringWithDamping: 0.7,
|
||||
initialSpringVelocity: 0,
|
||||
options: UIViewAnimationOptions.CurveLinear,
|
||||
options: UIView.AnimationOptions.curveLinear,
|
||||
animations: { () -> Void in
|
||||
container.layoutIfNeeded()
|
||||
self.transform = CGAffineTransformMakeScale(1.0, 1.0)
|
||||
self.container?.superview?.layoutIfNeeded()
|
||||
self.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
|
||||
self.alpha = 1
|
||||
}, completion: { (success) -> Void in
|
||||
}, completion: { (_) -> Void in
|
||||
})
|
||||
}
|
||||
|
||||
public func hideAnimation(distance distance: Float, duration: Double, delay: Double = 0) {
|
||||
|
||||
guard let container = self.container else {
|
||||
fatalError()
|
||||
}
|
||||
|
||||
let heightConstraint = self.container?.constraints.filter {$0.identifier == "height"}.first
|
||||
|
||||
guard heightConstraint != nil else {
|
||||
func hideAnimation(distance: Float, duration: Double, delay: Double = 0) {
|
||||
guard let heightConstraint = (self.container?.constraints.filter { $0.identifier == "height" })?.first else {
|
||||
return
|
||||
}
|
||||
heightConstraint?.constant = CGFloat(distance)
|
||||
UIView.animateWithDuration(
|
||||
duration,
|
||||
|
||||
heightConstraint.constant = CGFloat(distance)
|
||||
UIView.animate(
|
||||
withDuration: duration,
|
||||
delay: delay,
|
||||
options: UIViewAnimationOptions.CurveEaseIn,
|
||||
options: UIView.AnimationOptions.curveEaseIn,
|
||||
animations: { () -> Void in
|
||||
container.layoutIfNeeded()
|
||||
self.transform = CGAffineTransformMakeScale(0.01, 0.01)
|
||||
}, completion: { (success) -> Void in
|
||||
self.container?.superview?.layoutIfNeeded()
|
||||
self.transform = CGAffineTransform(scaleX: 0.01, y: 0.01)
|
||||
}, completion: { (_) -> Void in
|
||||
self.alpha = 0
|
||||
|
||||
if let _ = self.container {
|
||||
container.removeFromSuperview() // remove container
|
||||
self.container?.removeFromSuperview() // remove container
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
public func changeDistance(distance: CGFloat, animated: Bool, duration: Double = 0, delay: Double = 0) {
|
||||
func changeDistance(_ distance: CGFloat, animated _: Bool, duration: Double = 0, delay: Double = 0) {
|
||||
|
||||
guard let container = self.container else {
|
||||
guard let heightConstraint = (self.container?.constraints.filter { $0.identifier == "height" })?.first else {
|
||||
fatalError()
|
||||
}
|
||||
|
||||
let heightConstraint = self.container?.constraints.filter {$0.identifier == "height"}.first
|
||||
heightConstraint.constant = distance
|
||||
|
||||
guard heightConstraint != nil else {
|
||||
return
|
||||
}
|
||||
|
||||
heightConstraint?.constant = distance
|
||||
|
||||
UIView.animateWithDuration(
|
||||
duration,
|
||||
UIView.animate(
|
||||
withDuration: duration,
|
||||
delay: delay,
|
||||
options: UIViewAnimationOptions.CurveEaseIn,
|
||||
options: UIView.AnimationOptions.curveEaseIn,
|
||||
animations: { () -> Void in
|
||||
container.layoutIfNeeded()
|
||||
self.container?.superview?.layoutIfNeeded()
|
||||
},
|
||||
completion: nil)
|
||||
}
|
||||
|
||||
// MARK: layer animation
|
||||
|
||||
public func rotationLayerAnimation(angle: Float, duration: Double) {
|
||||
if let aContainer = container {
|
||||
rotationLayerAnimation(aContainer, angle: angle, duration: duration)
|
||||
func rotationAnimation(_ angle: Float, duration: Double) {
|
||||
let rotation = customize(CABasicAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = TimeInterval(duration)
|
||||
$0.toValue = (angle.degrees)
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension UIView {
|
||||
|
||||
public func rotationLayerAnimation(view: UIView, angle: Float, duration: Double) {
|
||||
|
||||
let rotation = Init(CABasicAnimation(keyPath: "transform.rotation")) {
|
||||
$0.duration = NSTimeInterval(duration)
|
||||
$0.toValue = (angle.degrees)
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
}
|
||||
view.layer.addAnimation(rotation, forKey: "rotation")
|
||||
container?.layer.add(rotation, forKey: "rotation")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
import Foundation
|
||||
import UIKit
|
||||
|
||||
public class CircleMenuLoader: UIView {
|
||||
internal class CircleMenuLoader: UIView {
|
||||
|
||||
// MARK: properties
|
||||
|
||||
@@ -33,15 +33,13 @@ public class CircleMenuLoader: UIView {
|
||||
|
||||
// MARK: life cycle
|
||||
|
||||
public init(radius: CGFloat, strokeWidth: CGFloat, circleMenu: CircleMenu, color: UIColor?) {
|
||||
internal init(radius: CGFloat, strokeWidth: CGFloat, platform: UIView, color: UIColor?) {
|
||||
super.init(frame: CGRect(x: 0, y: 0, width: radius, height: radius))
|
||||
|
||||
if let aSuperView = circleMenu.superview {
|
||||
aSuperView.insertSubview(self, belowSubview: circleMenu)
|
||||
}
|
||||
platform.addSubview(self)
|
||||
|
||||
circle = createCircle(radius, strokeWidth: strokeWidth, color: color)
|
||||
createConstraints(circleMenu, radius: radius)
|
||||
createConstraints(platform: platform, radius: radius)
|
||||
|
||||
let circleFrame = CGRect(
|
||||
x: radius * 2 - strokeWidth,
|
||||
@@ -50,79 +48,65 @@ public class CircleMenuLoader: UIView {
|
||||
height: strokeWidth)
|
||||
createRoundView(circleFrame, color: color)
|
||||
|
||||
backgroundColor = UIColor.clearColor()
|
||||
backgroundColor = UIColor.clear
|
||||
}
|
||||
|
||||
required public init?(coder aDecoder: NSCoder) {
|
||||
internal required init?(coder _: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
|
||||
// MARK: create
|
||||
|
||||
private func createCircle(radius: CGFloat, strokeWidth: CGFloat, color: UIColor?) -> CAShapeLayer {
|
||||
fileprivate func createCircle(_ radius: CGFloat, strokeWidth: CGFloat, color: UIColor?) -> CAShapeLayer {
|
||||
|
||||
let circlePath = UIBezierPath(
|
||||
arcCenter: CGPoint(x: radius, y: radius),
|
||||
radius: CGFloat(radius) - strokeWidth / 2.0,
|
||||
startAngle: CGFloat(0),
|
||||
endAngle:CGFloat(M_PI * 2),
|
||||
endAngle: CGFloat.pi * 2,
|
||||
clockwise: true)
|
||||
|
||||
let circle = Init(CAShapeLayer()) {
|
||||
$0.path = circlePath.CGPath
|
||||
$0.fillColor = UIColor.clearColor().CGColor
|
||||
$0.strokeColor = color?.CGColor
|
||||
$0.lineWidth = strokeWidth
|
||||
let circle = customize(CAShapeLayer()) {
|
||||
$0.path = circlePath.cgPath
|
||||
$0.fillColor = UIColor.clear.cgColor
|
||||
$0.strokeColor = color?.cgColor
|
||||
$0.lineWidth = strokeWidth
|
||||
}
|
||||
|
||||
self.layer.addSublayer(circle)
|
||||
layer.addSublayer(circle)
|
||||
return circle
|
||||
}
|
||||
|
||||
private func createConstraints(circleMenu: CircleMenu, radius: CGFloat) {
|
||||
|
||||
guard let circleMenuSuperView = circleMenu.superview else {
|
||||
fatalError()
|
||||
}
|
||||
fileprivate func createConstraints(platform: UIView, radius: CGFloat) {
|
||||
|
||||
translatesAutoresizingMaskIntoConstraints = false
|
||||
// added constraints
|
||||
addConstraint(NSLayoutConstraint(item: self,
|
||||
attribute: .Height,
|
||||
relatedBy: .Equal,
|
||||
toItem: nil,
|
||||
attribute: .Height,
|
||||
multiplier: 1,
|
||||
constant: radius * 2.0))
|
||||
let sizeConstraints = [NSLayoutConstraint.Attribute.width, .height].map {
|
||||
NSLayoutConstraint(item: self,
|
||||
attribute: $0,
|
||||
relatedBy: .equal,
|
||||
toItem: nil,
|
||||
attribute: $0,
|
||||
multiplier: 1,
|
||||
constant: radius * 2.0)
|
||||
}
|
||||
addConstraints(sizeConstraints)
|
||||
|
||||
addConstraint(NSLayoutConstraint(item: self,
|
||||
attribute: .Width,
|
||||
relatedBy: .Equal,
|
||||
toItem: nil,
|
||||
attribute: .Width,
|
||||
multiplier: 1,
|
||||
constant: radius * 2.0))
|
||||
|
||||
circleMenuSuperView.addConstraint(NSLayoutConstraint(item: circleMenu,
|
||||
attribute: .CenterX,
|
||||
relatedBy: .Equal,
|
||||
toItem: self,
|
||||
attribute: .CenterX,
|
||||
multiplier: 1,
|
||||
constant:0))
|
||||
|
||||
circleMenuSuperView.addConstraint(NSLayoutConstraint(item: circleMenu,
|
||||
attribute: .CenterY,
|
||||
relatedBy: .Equal,
|
||||
toItem: self,
|
||||
attribute: .CenterY,
|
||||
multiplier: 1,
|
||||
constant:0))
|
||||
let centerConstaraints = [NSLayoutConstraint.Attribute.centerY, .centerX].map {
|
||||
NSLayoutConstraint(item: platform,
|
||||
attribute: $0,
|
||||
relatedBy: .equal,
|
||||
toItem: self,
|
||||
attribute: $0,
|
||||
multiplier: 1,
|
||||
constant: 0)
|
||||
}
|
||||
platform.addConstraints(centerConstaraints)
|
||||
}
|
||||
|
||||
private func createRoundView(rect: CGRect, color: UIColor?) {
|
||||
let roundView = Init(UIView(frame: rect)) {
|
||||
$0.backgroundColor = UIColor.blackColor()
|
||||
internal func createRoundView(_ rect: CGRect, color: UIColor?) {
|
||||
let roundView = customize(UIView(frame: rect)) {
|
||||
$0.backgroundColor = UIColor.black
|
||||
$0.layer.cornerRadius = rect.size.width / 2.0
|
||||
$0.backgroundColor = color
|
||||
}
|
||||
@@ -131,7 +115,7 @@ public class CircleMenuLoader: UIView {
|
||||
|
||||
// MARK: animations
|
||||
|
||||
public func fillAnimation(duration: Double, startAngle: Float) {
|
||||
internal func fillAnimation(_ duration: Double, startAngle: Float, completion: @escaping () -> Void) {
|
||||
guard circle != nil else {
|
||||
return
|
||||
}
|
||||
@@ -139,36 +123,40 @@ public class CircleMenuLoader: UIView {
|
||||
let rotateTransform = CATransform3DMakeRotation(CGFloat(startAngle.degrees), 0, 0, 1)
|
||||
layer.transform = rotateTransform
|
||||
|
||||
let animation = Init(CABasicAnimation(keyPath: "strokeEnd")) {
|
||||
$0.duration = CFTimeInterval(duration)
|
||||
$0.fromValue = (0)
|
||||
$0.toValue = (1)
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
|
||||
CATransaction.begin()
|
||||
CATransaction.setCompletionBlock(completion)
|
||||
let animation = customize(CABasicAnimation(keyPath: "strokeEnd")) {
|
||||
$0.duration = CFTimeInterval(duration)
|
||||
$0.fromValue = 0
|
||||
$0.toValue = 1
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
|
||||
}
|
||||
circle?.addAnimation(animation, forKey: nil)
|
||||
circle?.add(animation, forKey: nil)
|
||||
CATransaction.commit()
|
||||
}
|
||||
|
||||
public func hideAnimation(duration: CGFloat, delay: Double) {
|
||||
internal func hideAnimation(_ duration: CGFloat, delay: Double, completion: @escaping () -> Void) {
|
||||
|
||||
let scale = Init(CABasicAnimation(keyPath: "transform.scale")) {
|
||||
$0.toValue = 1.2
|
||||
$0.duration = CFTimeInterval(duration)
|
||||
$0.fillMode = kCAFillModeForwards
|
||||
$0.removedOnCompletion = false
|
||||
$0.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
let scale = customize(CABasicAnimation(keyPath: "transform.scale")) {
|
||||
$0.toValue = 1.2
|
||||
$0.duration = CFTimeInterval(duration)
|
||||
$0.fillMode = CAMediaTimingFillMode.forwards
|
||||
$0.isRemovedOnCompletion = false
|
||||
$0.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeOut)
|
||||
$0.beginTime = CACurrentMediaTime() + delay
|
||||
}
|
||||
layer.addAnimation(scale, forKey: nil)
|
||||
layer.add(scale, forKey: nil)
|
||||
|
||||
UIView.animateWithDuration(
|
||||
CFTimeInterval(duration),
|
||||
UIView.animate(
|
||||
withDuration: CFTimeInterval(duration),
|
||||
delay: delay,
|
||||
options: UIViewAnimationOptions.CurveEaseIn,
|
||||
options: UIView.AnimationOptions.curveEaseIn,
|
||||
animations: { () -> Void in
|
||||
self.alpha = 0
|
||||
},
|
||||
completion: { (success) -> Void in
|
||||
completion: { (_) -> Void in
|
||||
self.removeFromSuperview()
|
||||
completion()
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,25 +6,23 @@
|
||||
// Copyright © 2016 Alex K. All rights reserved.
|
||||
//
|
||||
|
||||
import XCTest
|
||||
|
||||
@testable import CircleMenu
|
||||
import XCTest
|
||||
|
||||
class CircleMenuTests: XCTestCase {
|
||||
|
||||
let buttonsCount = 4
|
||||
|
||||
let circleMenu = CircleMenu(
|
||||
frame: CGRect(x: 200, y: 200, width: 50, height: 50),
|
||||
normalIcon:"icon_menu",
|
||||
selectedIcon:"icon_close",
|
||||
buttonsCount: 4,
|
||||
duration: 4,
|
||||
distance: 120)
|
||||
frame: CGRect(x: 200, y: 200, width: 50, height: 50),
|
||||
normalIcon: "icon_menu",
|
||||
selectedIcon: "icon_close",
|
||||
buttonsCount: 4,
|
||||
duration: 4,
|
||||
distance: 120)
|
||||
|
||||
let view = UIView()
|
||||
|
||||
|
||||
override func setUp() {
|
||||
super.setUp()
|
||||
circleMenu.buttonsCount = buttonsCount
|
||||
@@ -33,7 +31,6 @@ class CircleMenuTests: XCTestCase {
|
||||
|
||||
override func tearDown() {
|
||||
super.tearDown()
|
||||
|
||||
}
|
||||
|
||||
func testCircleMenuShowButtons() {
|
||||
@@ -47,7 +44,6 @@ class CircleMenuTests: XCTestCase {
|
||||
XCTAssertEqual(circleMenu.buttons?.count, buttonsCount, "button is created")
|
||||
}
|
||||
|
||||
|
||||
func testCircleMenuHideButtons() {
|
||||
// given
|
||||
circleMenu.onTap()
|
||||
@@ -59,13 +55,12 @@ class CircleMenuTests: XCTestCase {
|
||||
XCTAssertNil(circleMenu.buttons, "button is removed")
|
||||
}
|
||||
|
||||
|
||||
func testCircleMenuHideButtonsAfterAnimation() {
|
||||
// given
|
||||
circleMenu.onTap()
|
||||
|
||||
// when
|
||||
circleMenu.buttonHandler((circleMenu.buttons?.first)!)
|
||||
circleMenu.buttonHandler((circleMenu.buttons?.first)! as! CircleMenuButton)
|
||||
|
||||
// then
|
||||
XCTAssertNil(circleMenu.buttons, "button is removed")
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
// swift-tools-version:5.1
|
||||
//
|
||||
// Package.swift
|
||||
//
|
||||
// Copyright (c) Ramotion (https://www.ramotion.com/)
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
// of this software and associated documentation files (the "Software"), to deal
|
||||
// in the Software without restriction, including without limitation the rights
|
||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
// copies of the Software, and to permit persons to whom the Software is
|
||||
// furnished to do so, subject to the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be included in
|
||||
// all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
// THE SOFTWARE.
|
||||
//
|
||||
|
||||
import PackageDescription
|
||||
|
||||
let package = Package(
|
||||
name: "CircleMenu",
|
||||
platforms: [
|
||||
.iOS(.v9)
|
||||
],
|
||||
products: [
|
||||
.library(name: "CircleMenu",
|
||||
targets: ["CircleMenu"])
|
||||
],
|
||||
targets: [
|
||||
.target(name: "CircleMenu",
|
||||
path: "CircleMenuLib")
|
||||
],
|
||||
swiftLanguageVersions: [.v5]
|
||||
)
|
||||
@@ -1,21 +1,41 @@
|
||||

|
||||
# CircleMenu
|
||||
<a href="https://www.ramotion.com/agency/app-development/?utm_source=gthb&utm_medium=repo&utm_campaign=circle-menu"><img src="https://github.com/Ramotion/circle-menu/blob/master/header.png"></a>
|
||||
|
||||
<a href="https://github.com/Ramotion/circle-menu">
|
||||
<img align="left" src="https://github.com/Ramotion/circle-menu/blob/master/circle-menu.gif" width="480" height="360" /></a>
|
||||
|
||||
<p><h1 align="left">CIRCLE MENU</h1></p>
|
||||
|
||||
<h4>Simple, elegant UI menu with a circular layout and material design animations</h4>
|
||||
|
||||
|
||||
___
|
||||
|
||||
|
||||
|
||||
<p><h6>We specialize in the designing and coding of custom UI for Mobile Apps and Websites.</h6>
|
||||
<a href="https://www.ramotion.com/agency/app-development/?utm_source=gthb&utm_medium=repo&utm_campaign=circle-menu">
|
||||
<img src="https://github.com/ramotion/gliding-collection/raw/master/contact_our_team@2x.png" width="187" height="34"></a>
|
||||
</p>
|
||||
<p><h6>Stay tuned for the latest updates:</h6>
|
||||
<a href="https://goo.gl/rPFpid" >
|
||||
<img src="https://i.imgur.com/ziSqeSo.png/" width="156" height="28"></a></p>
|
||||
|
||||
</br>
|
||||
|
||||
[](http://twitter.com/Ramotion)
|
||||
[](https://cocoapods.org/pods/CircleMenu)
|
||||
[](http://cocoapods.org/pods/CircleMenu)
|
||||
[](https://cdn.rawgit.com/Ramotion/circle-menu/master/docs/index.html)
|
||||
[](https://github.com/Ramotion/circle-menu)
|
||||
[](https://codebeat.co/projects/github-com-ramotion-circle-menu)
|
||||
[](https://travis-ci.org/Ramotion/circle-menu)
|
||||
[](https://paypal.me/Ramotion)
|
||||
|
||||
[shot on dribbble:](https://dribbble.com/shots/2534780-Circle-Menu-Swift-Open-Source)
|
||||

|
||||
|
||||
|
||||
The [iPhone mockup](https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu) available [here](https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu).
|
||||
|
||||
## Requirements
|
||||
|
||||
- iOS 8.0+
|
||||
- Xcode 7.2
|
||||
- iOS 9.0+
|
||||
- Xcode 9.0.1
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -24,7 +44,11 @@ Just add CircleMenuLib folder to your project.
|
||||
or use [CocoaPods](https://cocoapods.org) with Podfile:
|
||||
|
||||
```ruby
|
||||
pod 'CircleMenu', '~> 0.0.5'
|
||||
pod 'CircleMenu'
|
||||
```
|
||||
or [Carthage](https://github.com/Carthage/Carthage) users can simply add to their `Cartfile`:
|
||||
```
|
||||
github "Ramotion/circle-menu"
|
||||
```
|
||||
|
||||
## Usage
|
||||
@@ -38,10 +62,10 @@ pod 'CircleMenu', '~> 0.0.5'
|
||||
3) Use delegate method to configure buttons
|
||||
|
||||
```swift
|
||||
func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int)
|
||||
func circleMenu(circleMenu: CircleMenu, willDisplay button: UIButton, atIndex: Int)
|
||||
```
|
||||
|
||||
4) Use properties to confiure CircleMenu
|
||||
4) Use properties to configure CircleMenu
|
||||
|
||||
```swift
|
||||
@IBInspectable var buttonsCount: Int = 3
|
||||
@@ -68,23 +92,44 @@ view.addSubview(button)
|
||||
|
||||
```swift
|
||||
// configure buttons
|
||||
optional func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, willDisplay button: UIButton, atIndex: Int)
|
||||
|
||||
// call before animation
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: UIButton, atIndex: Int)
|
||||
|
||||
// call after animation
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: UIButton, atIndex: Int)
|
||||
|
||||
// call upon cancel of the menu - fires immediately on button press
|
||||
optional func menuCollapsed(circleMenu: CircleMenu)
|
||||
|
||||
// call upon opening of the menu - fires immediately on button press
|
||||
optional func menuOpened(circleMenu: CircleMenu)
|
||||
```
|
||||
|
||||
## Licence
|
||||
## 🗂 Check this library on other language:
|
||||
<a href="https://github.com/Ramotion/circle-menu-android">
|
||||
<img src="https://github.com/ramotion/navigation-stack/raw/master/Android_Java@2x.png" width="178" height="81"></a>
|
||||
<a href="https://github.com/Ramotion/react-native-circle-menu">
|
||||
<img src="https://github.com/ramotion/navigation-stack/raw/master/React Native@2x.png" width="178" height="81"></a>
|
||||
|
||||
Circle menu is released under the MIT license.
|
||||
|
||||
## 📄 License
|
||||
|
||||
Circle Menu is released under the MIT license.
|
||||
See [LICENSE](./LICENSE) for details.
|
||||
|
||||
## About
|
||||
The project maintained by [app development agency](https://ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu) [Ramotion Inc.](https://ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu)
|
||||
See our other [open-source projects](https://github.com/ramotion) or [hire](https://ramotion.com?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu) us to design, develop, and grow your product.
|
||||
This library is a part of a <a href="https://github.com/Ramotion/swift-ui-animation-components-and-libraries"><b>selection of our best UI open-source projects.</b></a>
|
||||
|
||||
[](https://twitter.com/intent/tweet?text=https://github.com/ramotion/circle-menu)
|
||||
[](https://twitter.com/ramotion)
|
||||
If you use the open-source library in your project, please make sure to credit and backlink to www.ramotion.com
|
||||
|
||||
## 📱 Get the Showroom App for iOS to give it a try
|
||||
Try this UI component and more like this in our iOS app. Contact us if interested.
|
||||
|
||||
<a href="https://itunes.apple.com/app/apple-store/id1182360240?pt=550053&ct=folding-cell&mt=8" >
|
||||
<img src="https://github.com/ramotion/gliding-collection/raw/master/app_store@2x.png" width="117" height="34"></a>
|
||||
|
||||
<a href="https://www.ramotion.com/agency/app-development/?utm_source=gthb&utm_medium=repo&utm_campaign=circle-menu">
|
||||
<img src="https://github.com/ramotion/gliding-collection/raw/master/contact_our_team@2x.png" width="187" height="34"></a>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
After Width: | Height: | Size: 3.2 MiB |
@@ -13,12 +13,12 @@
|
||||
<a title="Classes Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Classes Reference
|
||||
</p>
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -74,54 +52,6 @@
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu16CircleMenuButton"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuButton" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu16CircleMenuButton">CircleMenuButton</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
<a href="Classes/CircleMenuButton.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu16CircleMenuLoader"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuLoader" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu16CircleMenuLoader">CircleMenuLoader</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
<a href="Classes/CircleMenuLoader.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/CircleMenu"></a>
|
||||
@@ -134,9 +64,9 @@
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu10CircleMenu"></a>
|
||||
<a name="/s:C14CircleMenuDemo10CircleMenu"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenu" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu10CircleMenu">CircleMenu</a>
|
||||
<a class="token" href="#/s:C14CircleMenuDemo10CircleMenu">CircleMenu</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -144,10 +74,18 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>A Button object with pop ups buttons</p>
|
||||
|
||||
<a href="Classes/CircleMenu.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">CircleMenu</span><span class="p">:</span> <span class="kt">UIButton</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -156,7 +94,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
<a title="CircleMenu Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="../index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<a href="../index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenu Class Reference
|
||||
</p>
|
||||
@@ -33,28 +33,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -71,7 +49,13 @@
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenu</h1>
|
||||
<p>Undocumented</p>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">CircleMenu</span><span class="p">:</span> <span class="kt">UIButton</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<p>A Button object with pop ups buttons</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
@@ -87,9 +71,9 @@
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu12buttonsCountSi"></a>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu12buttonsCountSi"></a>
|
||||
<a name="//apple_ref/swift/Property/buttonsCount" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu12buttonsCountSi">buttonsCount</a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu12buttonsCountSi">buttonsCount</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -97,18 +81,26 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Buttons count</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">buttonsCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8durationSd"></a>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8durationSd"></a>
|
||||
<a name="//apple_ref/swift/Property/duration" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8durationSd">duration</a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8durationSd">duration</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -116,18 +108,26 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Circle animation duration</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8distanceSf"></a>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8distanceSf"></a>
|
||||
<a name="//apple_ref/swift/Property/distance" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8distanceSf">distance</a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8distanceSf">distance</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -135,18 +135,26 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Distance between center button and buttons</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">distance</span><span class="p">:</span> <span class="kt">Float</span> <span class="o">=</span> <span class="mi">100</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu9showDelaySd"></a>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu9showDelaySd"></a>
|
||||
<a name="//apple_ref/swift/Property/showDelay" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu9showDelaySd">showDelay</a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu9showDelaySd">showDelay</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -154,18 +162,26 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Delay between show buttons</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">showDelay</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8delegateXwGSqPSs9AnyObject__"></a>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8delegateXwGSqPs9AnyObject__"></a>
|
||||
<a name="//apple_ref/swift/Property/delegate" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8delegateXwGSqPSs9AnyObject__">delegate</a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8delegateXwGSqPs9AnyObject__">delegate</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -173,9 +189,17 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>The object that acts as the delegate of the circle menu.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBOutlet</span> <span class="k">weak</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">?</span> <span class="c1">//CircleMenuDelegate?</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -193,9 +217,9 @@
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenucFMS0_FT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_"></a>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenucFT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_"></a>
|
||||
<a name="//apple_ref/swift/Method/init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenucFMS0_FT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_">init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)</a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenucFT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_">init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -203,26 +227,106 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Initializes and returns a circle menu object.</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenucFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenucFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">frame</span><span class="p">:</span> <span class="kt">CGRect</span><span class="p">,</span> <span class="nv">normalIcon</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">selectedIcon</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">buttonsCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span> <span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
|
||||
<span class="nv">distance</span><span class="p">:</span> <span class="kt">Float</span> <span class="o">=</span> <span class="mi">100</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>frame</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A rectangle specifying the initial location and size of the circle menu in its superview’s coordinates.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>normalIcon</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The image to use for the specified normal state.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>selectedIcon</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The image to use for the specified selected state.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>buttonsCount</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The number of buttons.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>duration</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The duration, in seconds, of the animation.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>distance</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Distance between center button and sub buttons.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Return Value</h4>
|
||||
<p>A newly created circle menu.</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
@@ -232,19 +336,19 @@
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/helpers"></a>
|
||||
<a name="//apple_ref/swift/Section/helpers" class="dashAnchor"></a>
|
||||
<a href="#/helpers">
|
||||
<h3 class="section-name">helpers</h3>
|
||||
<a name="/methods"></a>
|
||||
<a name="//apple_ref/swift/Section/methods" class="dashAnchor"></a>
|
||||
<a href="#/methods">
|
||||
<h3 class="section-name">methods</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenu14buttonsIsShownFS0_FT_Sb"></a>
|
||||
<a name="//apple_ref/swift/Method/buttonsIsShown()" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenu14buttonsIsShownFS0_FT_Sb">buttonsIsShown()</a>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenu11hideButtonsFTSd9hideDelaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideButtons(_:hideDelay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenu11hideButtonsFTSd9hideDelaySd_T_">hideButtons(_:hideDelay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -252,9 +356,77 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Hide button</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">hideButtons</span><span class="p">(</span><span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span><span class="p">,</span> <span class="nv">hideDelay</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">0</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>duration</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The duration, in seconds, of the animation.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>hideDelay</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The time to delay, in seconds.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenu14buttonsIsShownFT_Sb"></a>
|
||||
<a name="//apple_ref/swift/Method/buttonsIsShown()" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenu14buttonsIsShownFT_Sb">buttonsIsShown()</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Check is sub buttons showed</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">buttonsIsShown</span><span class="p">()</span> <span class="o">-></span> <span class="kt">Bool</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -263,7 +435,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
|
||||
@@ -1,269 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuButton Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuButton" class="dashAnchor"></a>
|
||||
<a title="CircleMenuButton Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuButton Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuButton</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/properties"></a>
|
||||
<a name="//apple_ref/swift/Section/properties" class="dashAnchor"></a>
|
||||
<a href="#/properties">
|
||||
<h3 class="section-name">properties</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu16CircleMenuButton9containerXwGSqCSo6UIView_"></a>
|
||||
<a name="//apple_ref/swift/Property/container" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu16CircleMenuButton9containerXwGSqCSo6UIView_">container</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButtoncFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButtoncFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/public%20"></a>
|
||||
<a name="//apple_ref/swift/Section/public " class="dashAnchor"></a>
|
||||
<a href="#/public%20">
|
||||
<h3 class="section-name">public </h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton8rotatedZFS0_FT5angleSf8animatedSb8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotatedZ(angle:animated:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton8rotatedZFS0_FT5angleSf8animatedSb8durationSd5delaySd_T_">rotatedZ(angle:animated:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton13showAnimationFS0_FT8distanceSf8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/showAnimation(distance:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton13showAnimationFS0_FT8distanceSf8durationSd5delaySd_T_">showAnimation(distance:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton13hideAnimationFS0_FT8distanceSf8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideAnimation(distance:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton13hideAnimationFS0_FT8distanceSf8durationSd5delaySd_T_">hideAnimation(distance:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton14changeDistanceFS0_FTV12CoreGraphics7CGFloat8animatedSb8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/changeDistance(_:animated:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton14changeDistanceFS0_FTV12CoreGraphics7CGFloat8animatedSb8durationSd5delaySd_T_">changeDistance(_:animated:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/layer%20animation"></a>
|
||||
<a name="//apple_ref/swift/Section/layer animation" class="dashAnchor"></a>
|
||||
<a href="#/layer%20animation">
|
||||
<h3 class="section-name">layer animation</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton22rotationLayerAnimationFS0_FTSf8durationSd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotationLayerAnimation(_:duration:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton22rotationLayerAnimationFS0_FTSf8durationSd_T_">rotationLayerAnimation(_:duration:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,186 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuLoader Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuLoader" class="dashAnchor"></a>
|
||||
<a title="CircleMenuLoader Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuLoader Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuLoader</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT6radiusV12CoreGraphics7CGFloat11strokeWidthS2_10circleMenuCS_10CircleMenu5colorGSqCSo7UIColor__S0_"></a>
|
||||
<a name="//apple_ref/swift/Method/init(radius:strokeWidth:circleMenu:color:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT6radiusV12CoreGraphics7CGFloat11strokeWidthS2_10circleMenuCS_10CircleMenu5colorGSqCSo7UIColor__S0_">init(radius:strokeWidth:circleMenu:color:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/animations"></a>
|
||||
<a name="//apple_ref/swift/Section/animations" class="dashAnchor"></a>
|
||||
<a href="#/animations">
|
||||
<h3 class="section-name">animations</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoader13fillAnimationFS0_FTSd10startAngleSf_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/fillAnimation(_:startAngle:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoader13fillAnimationFS0_FTSd10startAngleSf_T_">fillAnimation(_:startAngle:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoader13hideAnimationFS0_FTV12CoreGraphics7CGFloat5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideAnimation(_:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoader13hideAnimationFS0_FTV12CoreGraphics7CGFloat5delaySd_T_">hideAnimation(_:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,125 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Extensions Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="js/jquery.min.js" defer></script>
|
||||
<script src="js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="Extensions Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Extensions Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>Extensions</h1>
|
||||
<p>The following extensions are available globally.</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/Animations"></a>
|
||||
<a name="//apple_ref/swift/Section/Animations" class="dashAnchor"></a>
|
||||
<a href="#/Animations">
|
||||
<h3 class="section-name">Animations</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/c:objc(cs)UIView"></a>
|
||||
<a name="//apple_ref/swift/Extension/UIView" class="dashAnchor"></a>
|
||||
<a class="token" href="#/c:objc(cs)UIView">UIView</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
|
||||
<a href="Extensions/UIView.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,124 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UIView Extension Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Extension/UIView" class="dashAnchor"></a>
|
||||
<a title="UIView Extension Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
UIView Extension Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>UIView</h1>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FE10CircleMenuCSo6UIView22rotationLayerAnimationFS0_FTS0_5angleSf8durationSd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotationLayerAnimation(_:angle:duration:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FE10CircleMenuCSo6UIView22rotationLayerAnimationFS0_FTS0_5angleSf8durationSd_T_">rotationLayerAnimation(_:angle:duration:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -13,12 +13,12 @@
|
||||
<a title="Protocols Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Protocols Reference
|
||||
</p>
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -76,19 +54,19 @@
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/Protocol%20"></a>
|
||||
<a name="//apple_ref/swift/Section/Protocol " class="dashAnchor"></a>
|
||||
<a href="#/Protocol%20">
|
||||
<h3 class="section-name">Protocol </h3>
|
||||
<a name="/Protocol"></a>
|
||||
<a name="//apple_ref/swift/Section/Protocol" class="dashAnchor"></a>
|
||||
<a href="#/Protocol">
|
||||
<h3 class="section-name">Protocol</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:P10CircleMenu18CircleMenuDelegate"></a>
|
||||
<a name="/s:P14CircleMenuDemo18CircleMenuDelegate"></a>
|
||||
<a name="//apple_ref/swift/Protocol/CircleMenuDelegate" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:P10CircleMenu18CircleMenuDelegate">CircleMenuDelegate</a>
|
||||
<a class="token" href="#/s:P14CircleMenuDemo18CircleMenuDelegate">CircleMenuDelegate</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -96,10 +74,18 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>CircleMenuDelegate</p>
|
||||
|
||||
<a href="Protocols/CircleMenuDelegate.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@objc</span> <span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">CircleMenuDelegate</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -108,7 +94,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
<a title="CircleMenuDelegate Protocol Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="../index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<a href="../index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuDelegate Protocol Reference
|
||||
</p>
|
||||
@@ -33,28 +33,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -71,7 +49,13 @@
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuDelegate</h1>
|
||||
<p>Undocumented</p>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">@objc</span> <span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">CircleMenuDelegate</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<p>CircleMenuDelegate</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
@@ -80,9 +64,9 @@
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu11willDisplayCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu11willDisplayCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:willDisplay:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu11willDisplayCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:willDisplay:atIndex:)</a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu11willDisplayCSo8UIButton7atIndexSi_T_">circleMenu(_:willDisplay:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -90,18 +74,72 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Tells the delegate the circle menu is about to draw a button for a particular index.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">willDisplay</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The circle menu object informing the delegate of this impending event.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu button object that circle menu is going to use when drawing the row. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>An button index.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu18buttonWillSelectedCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu18buttonWillSelectedCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonWillSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu18buttonWillSelectedCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:buttonWillSelected:atIndex:)</a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu18buttonWillSelectedCSo8UIButton7atIndexSi_T_">circleMenu(_:buttonWillSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -109,18 +147,72 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Tells the delegate that a specified index is about to be selected.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonWillSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the impending selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A selected circle menu button. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Selected button index</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu17buttonDidSelectedCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu17buttonDidSelectedCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonDidSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu17buttonDidSelectedCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:buttonDidSelected:atIndex:)</a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu17buttonDidSelectedCSo8UIButton7atIndexSi_T_">circleMenu(_:buttonDidSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -128,9 +220,110 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>Tells the delegate that the specified index is now selected.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonDidSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the new index selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A selected circle menu button. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Selected button index</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate13menuCollapsedFCS_10CircleMenuT_"></a>
|
||||
<a name="//apple_ref/swift/Method/menuCollapsed(_:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate13menuCollapsedFCS_10CircleMenuT_">menuCollapsed(_:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Tells the delegate that the menu was collapsed - the cancel action.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">menuCollapsed</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the new index selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -139,7 +332,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
|
||||
@@ -1,166 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Classes Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="js/jquery.min.js" defer></script>
|
||||
<script src="js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="Classes Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Classes Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>Classes</h1>
|
||||
<p>The following classes are available globally.</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu16CircleMenuButton"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuButton" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu16CircleMenuButton">CircleMenuButton</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
<a href="Classes/CircleMenuButton.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu16CircleMenuLoader"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuLoader" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu16CircleMenuLoader">CircleMenuLoader</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
<a href="Classes/CircleMenuLoader.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/CircleMenu"></a>
|
||||
<a name="//apple_ref/swift/Section/CircleMenu" class="dashAnchor"></a>
|
||||
<a href="#/CircleMenu">
|
||||
<h3 class="section-name">CircleMenu</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:C10CircleMenu10CircleMenu"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenu" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C10CircleMenu10CircleMenu">CircleMenu</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
<a href="Classes/CircleMenu.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,273 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenu Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenu" class="dashAnchor"></a>
|
||||
<a title="CircleMenu Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenu Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenu</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/properties"></a>
|
||||
<a name="//apple_ref/swift/Section/properties" class="dashAnchor"></a>
|
||||
<a href="#/properties">
|
||||
<h3 class="section-name">properties</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu12buttonsCountSi"></a>
|
||||
<a name="//apple_ref/swift/Property/buttonsCount" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu12buttonsCountSi">buttonsCount</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8durationSd"></a>
|
||||
<a name="//apple_ref/swift/Property/duration" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8durationSd">duration</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8distanceSf"></a>
|
||||
<a name="//apple_ref/swift/Property/distance" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8distanceSf">distance</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu9showDelaySd"></a>
|
||||
<a name="//apple_ref/swift/Property/showDelay" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu9showDelaySd">showDelay</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu10CircleMenu8delegateXwGSqPSs9AnyObject__"></a>
|
||||
<a name="//apple_ref/swift/Property/delegate" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu10CircleMenu8delegateXwGSqPSs9AnyObject__">delegate</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenucFMS0_FT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_"></a>
|
||||
<a name="//apple_ref/swift/Method/init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenucFMS0_FT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_">init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenucFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenucFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/helpers"></a>
|
||||
<a name="//apple_ref/swift/Section/helpers" class="dashAnchor"></a>
|
||||
<a href="#/helpers">
|
||||
<h3 class="section-name">helpers</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu10CircleMenu14buttonsIsShownFS0_FT_Sb"></a>
|
||||
<a name="//apple_ref/swift/Method/buttonsIsShown()" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu10CircleMenu14buttonsIsShownFS0_FT_Sb">buttonsIsShown()</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,269 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuButton Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuButton" class="dashAnchor"></a>
|
||||
<a title="CircleMenuButton Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuButton Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuButton</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/properties"></a>
|
||||
<a name="//apple_ref/swift/Section/properties" class="dashAnchor"></a>
|
||||
<a href="#/properties">
|
||||
<h3 class="section-name">properties</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC10CircleMenu16CircleMenuButton9containerXwGSqCSo6UIView_"></a>
|
||||
<a name="//apple_ref/swift/Property/container" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC10CircleMenu16CircleMenuButton9containerXwGSqCSo6UIView_">container</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButtoncFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButtoncFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/public%20"></a>
|
||||
<a name="//apple_ref/swift/Section/public " class="dashAnchor"></a>
|
||||
<a href="#/public%20">
|
||||
<h3 class="section-name">public </h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton8rotatedZFS0_FT5angleSf8animatedSb8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotatedZ(angle:animated:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton8rotatedZFS0_FT5angleSf8animatedSb8durationSd5delaySd_T_">rotatedZ(angle:animated:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton13showAnimationFS0_FT8distanceSf8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/showAnimation(distance:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton13showAnimationFS0_FT8distanceSf8durationSd5delaySd_T_">showAnimation(distance:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton13hideAnimationFS0_FT8distanceSf8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideAnimation(distance:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton13hideAnimationFS0_FT8distanceSf8durationSd5delaySd_T_">hideAnimation(distance:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton14changeDistanceFS0_FTV12CoreGraphics7CGFloat8animatedSb8durationSd5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/changeDistance(_:animated:duration:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton14changeDistanceFS0_FTV12CoreGraphics7CGFloat8animatedSb8durationSd5delaySd_T_">changeDistance(_:animated:duration:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/layer%20animation"></a>
|
||||
<a name="//apple_ref/swift/Section/layer animation" class="dashAnchor"></a>
|
||||
<a href="#/layer%20animation">
|
||||
<h3 class="section-name">layer animation</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuButton22rotationLayerAnimationFS0_FTSf8durationSd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotationLayerAnimation(_:duration:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuButton22rotationLayerAnimationFS0_FTSf8durationSd_T_">rotationLayerAnimation(_:duration:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,186 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuLoader Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenuLoader" class="dashAnchor"></a>
|
||||
<a title="CircleMenuLoader Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuLoader Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuLoader</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT6radiusV12CoreGraphics7CGFloat11strokeWidthS2_10circleMenuCS_10CircleMenu5colorGSqCSo7UIColor__S0_"></a>
|
||||
<a name="//apple_ref/swift/Method/init(radius:strokeWidth:circleMenu:color:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT6radiusV12CoreGraphics7CGFloat11strokeWidthS2_10circleMenuCS_10CircleMenu5colorGSqCSo7UIColor__S0_">init(radius:strokeWidth:circleMenu:color:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT5coderCSo7NSCoder_GSqS0__"></a>
|
||||
<a name="//apple_ref/swift/Method/init(coder:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoadercFMS0_FT5coderCSo7NSCoder_GSqS0__">init(coder:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/animations"></a>
|
||||
<a name="//apple_ref/swift/Section/animations" class="dashAnchor"></a>
|
||||
<a href="#/animations">
|
||||
<h3 class="section-name">animations</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoader13fillAnimationFS0_FTSd10startAngleSf_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/fillAnimation(_:startAngle:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoader13fillAnimationFS0_FTSd10startAngleSf_T_">fillAnimation(_:startAngle:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC10CircleMenu16CircleMenuLoader13hideAnimationFS0_FTV12CoreGraphics7CGFloat5delaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideAnimation(_:delay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC10CircleMenu16CircleMenuLoader13hideAnimationFS0_FTV12CoreGraphics7CGFloat5delaySd_T_">hideAnimation(_:delay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,125 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Extensions Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="js/jquery.min.js" defer></script>
|
||||
<script src="js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="Extensions Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Extensions Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>Extensions</h1>
|
||||
<p>The following extensions are available globally.</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/Animations"></a>
|
||||
<a name="//apple_ref/swift/Section/Animations" class="dashAnchor"></a>
|
||||
<a href="#/Animations">
|
||||
<h3 class="section-name">Animations</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/c:objc(cs)UIView"></a>
|
||||
<a name="//apple_ref/swift/Extension/UIView" class="dashAnchor"></a>
|
||||
<a class="token" href="#/c:objc(cs)UIView">UIView</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
|
||||
<a href="Extensions/UIView.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,124 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UIView Extension Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Extension/UIView" class="dashAnchor"></a>
|
||||
<a title="UIView Extension Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
UIView Extension Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>UIView</h1>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FE10CircleMenuCSo6UIView22rotationLayerAnimationFS0_FTS0_5angleSf8durationSd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/rotationLayerAnimation(_:angle:duration:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FE10CircleMenuCSo6UIView22rotationLayerAnimationFS0_FTS0_5angleSf8durationSd_T_">rotationLayerAnimation(_:angle:duration:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">class</span> <span class="kt">UIView</span> <span class="p">:</span> <span class="kt">UIResponder</span><span class="p">,</span> <span class="kt">NSCoding</span><span class="p">,</span> <span class="kt">UIAppearance</span><span class="p">,</span> <span class="kt">UIAppearanceContainer</span><span class="p">,</span> <span class="kt">UIDynamicItem</span><span class="p">,</span> <span class="kt">UITraitEnvironment</span><span class="p">,</span> <span class="kt">UICoordinateSpace</span><span class="p">,</span> <span class="kt">UIFocusEnvironment</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,117 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Functions Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="js/jquery.min.js" defer></script>
|
||||
<script src="js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="Functions Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Functions Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>Functions</h1>
|
||||
<p>The following functions are available globally.</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/helpers"></a>
|
||||
<a name="//apple_ref/swift/Section/helpers" class="dashAnchor"></a>
|
||||
<a href="#/helpers">
|
||||
<h3 class="section-name">helpers</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_"></a>
|
||||
<a name="//apple_ref/swift/Function/Init(_:block:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,149 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuDelegate Protocol Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Protocol/CircleMenuDelegate" class="dashAnchor"></a>
|
||||
<a title="CircleMenuDelegate Protocol Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenu Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuDelegate Protocol Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuDelegate</h1>
|
||||
<p>Undocumented</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu11willDisplayCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:willDisplay:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu11willDisplayCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:willDisplay:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu18buttonWillSelectedCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonWillSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu18buttonWillSelectedCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:buttonWillSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu17buttonDidSelectedCS_16CircleMenuButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonDidSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP10CircleMenu18CircleMenuDelegate10circleMenuuRq_S0__Fq_FTCS_10CircleMenu17buttonDidSelectedCS_16CircleMenuButton7atIndexSi_T_">circleMenu(_:buttonDidSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -1,37 +0,0 @@
|
||||
CircleMenuButton.swift
|
||||
public class CircleMenuButton: UIButton
|
||||
public weak var container: UIView?
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func rotatedZ(angle angle: Float, animated: Bool, duration: Double = 0, delay: Double = 0)
|
||||
public class CircleMenuButton : UIButton
|
||||
public func showAnimation(distance distance: Float, duration: Double, delay: Double = 0)
|
||||
public func hideAnimation(distance distance: Float, duration: Double, delay: Double = 0)
|
||||
public func changeDistance(distance: CGFloat, animated: Bool, duration: Double = 0, delay: Double = 0)
|
||||
public func rotationLayerAnimation(angle: Float, duration: Double)
|
||||
public func rotationLayerAnimation(view: UIView, angle: Float, duration: Double)
|
||||
CircleMenuLoader.swift
|
||||
public class CircleMenuLoader: UIView
|
||||
public init(radius: CGFloat, strokeWidth: CGFloat, circleMenu: CircleMenu, color: UIColor?)
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func fillAnimation(duration: Double, startAngle: Float)
|
||||
public func hideAnimation(duration: CGFloat, delay: Double)
|
||||
CircleMenu.swift
|
||||
public func Init<Type>(value: Type, @noescape block: (object: Type) -> Void) -> Type
|
||||
@objc public protocol CircleMenuDelegate
|
||||
optional func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: CircleMenuButton, atIndex: Int)
|
||||
public class CircleMenu: UIButton
|
||||
@IBInspectable public var buttonsCount: Int = 3
|
||||
@IBInspectable public var duration: Double = 2 // circle animation duration
|
||||
@IBInspectable public var distance: Float = 100 // distance between center button and buttons
|
||||
@IBInspectable public var showDelay: Double = 0 // delay between show buttons
|
||||
@IBOutlet weak public var delegate: AnyObject? //CircleMenuDelegate
|
||||
public init(frame: CGRect,
|
||||
normalIcon: String?,
|
||||
selectedIcon: String?,
|
||||
buttonsCount: Int = 3,
|
||||
duration: Double = 2,
|
||||
distance: Float = 100)
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func buttonsIsShown() -> Bool
|
||||
@@ -3,9 +3,9 @@
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.jazzy.circlemenu</string>
|
||||
<string>com.jazzy.circlemenudemo</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>CircleMenu</string>
|
||||
<string>CircleMenuDemo</string>
|
||||
<key>DocSetPlatformFamily</key>
|
||||
<string>jazzy</string>
|
||||
<key>isDashDocset</key>
|
||||
@@ -1,7 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Functions Reference</title>
|
||||
<title>Classes Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
@@ -10,17 +10,17 @@
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="Functions Reference"></a>
|
||||
<a title="Classes Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Functions Reference
|
||||
Classes Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -69,26 +47,26 @@
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>Functions</h1>
|
||||
<p>The following functions are available globally.</p>
|
||||
<h1>Classes</h1>
|
||||
<p>The following classes are available globally.</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/helpers"></a>
|
||||
<a name="//apple_ref/swift/Section/helpers" class="dashAnchor"></a>
|
||||
<a href="#/helpers">
|
||||
<h3 class="section-name">helpers</h3>
|
||||
<a name="/CircleMenu"></a>
|
||||
<a name="//apple_ref/swift/Section/CircleMenu" class="dashAnchor"></a>
|
||||
<a href="#/CircleMenu">
|
||||
<h3 class="section-name">CircleMenu</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_"></a>
|
||||
<a name="//apple_ref/swift/Function/Init(_:block:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
<a name="/s:C14CircleMenuDemo10CircleMenu"></a>
|
||||
<a name="//apple_ref/swift/Class/CircleMenu" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:C14CircleMenuDemo10CircleMenu">CircleMenu</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -96,8 +74,17 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>A Button object with pop ups buttons</p>
|
||||
|
||||
<a href="Classes/CircleMenu.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">CircleMenu</span><span class="p">:</span> <span class="kt">UIButton</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
@@ -107,7 +94,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
@@ -0,0 +1,445 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenu Class Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Class/CircleMenu" class="dashAnchor"></a>
|
||||
<a title="CircleMenu Class Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenu Class Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenu</h1>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">CircleMenu</span><span class="p">:</span> <span class="kt">UIButton</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<p>A Button object with pop ups buttons</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/properties"></a>
|
||||
<a name="//apple_ref/swift/Section/properties" class="dashAnchor"></a>
|
||||
<a href="#/properties">
|
||||
<h3 class="section-name">properties</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu12buttonsCountSi"></a>
|
||||
<a name="//apple_ref/swift/Property/buttonsCount" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu12buttonsCountSi">buttonsCount</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Buttons count</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">buttonsCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8durationSd"></a>
|
||||
<a name="//apple_ref/swift/Property/duration" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8durationSd">duration</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Circle animation duration</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8distanceSf"></a>
|
||||
<a name="//apple_ref/swift/Property/distance" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8distanceSf">distance</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Distance between center button and buttons</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">distance</span><span class="p">:</span> <span class="kt">Float</span> <span class="o">=</span> <span class="mi">100</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu9showDelaySd"></a>
|
||||
<a name="//apple_ref/swift/Property/showDelay" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu9showDelaySd">showDelay</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Delay between show buttons</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBInspectable</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">showDelay</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:vC14CircleMenuDemo10CircleMenu8delegateXwGSqPs9AnyObject__"></a>
|
||||
<a name="//apple_ref/swift/Property/delegate" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:vC14CircleMenuDemo10CircleMenu8delegateXwGSqPs9AnyObject__">delegate</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>The object that acts as the delegate of the circle menu.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@IBOutlet</span> <span class="k">weak</span> <span class="kd">public</span> <span class="k">var</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">?</span> <span class="c1">//CircleMenuDelegate?</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/life%20cycle"></a>
|
||||
<a name="//apple_ref/swift/Section/life cycle" class="dashAnchor"></a>
|
||||
<a href="#/life%20cycle">
|
||||
<h3 class="section-name">life cycle</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenucFT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_"></a>
|
||||
<a name="//apple_ref/swift/Method/init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenucFT5frameVSC6CGRect10normalIconGSqSS_12selectedIconGSqSS_12buttonsCountSi8durationSd8distanceSf_S0_">init(frame:normalIcon:selectedIcon:buttonsCount:duration:distance:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Initializes and returns a circle menu object.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">frame</span><span class="p">:</span> <span class="kt">CGRect</span><span class="p">,</span> <span class="nv">normalIcon</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">selectedIcon</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">buttonsCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span> <span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
|
||||
<span class="nv">distance</span><span class="p">:</span> <span class="kt">Float</span> <span class="o">=</span> <span class="mi">100</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>frame</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A rectangle specifying the initial location and size of the circle menu in its superview’s coordinates.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>normalIcon</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The image to use for the specified normal state.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>selectedIcon</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The image to use for the specified selected state.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>buttonsCount</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The number of buttons.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>duration</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The duration, in seconds, of the animation.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>distance</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Distance between center button and sub buttons.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Return Value</h4>
|
||||
<p>A newly created circle menu.</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/methods"></a>
|
||||
<a name="//apple_ref/swift/Section/methods" class="dashAnchor"></a>
|
||||
<a href="#/methods">
|
||||
<h3 class="section-name">methods</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenu11hideButtonsFTSd9hideDelaySd_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/hideButtons(_:hideDelay:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenu11hideButtonsFTSd9hideDelaySd_T_">hideButtons(_:hideDelay:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Hide button</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">hideButtons</span><span class="p">(</span><span class="nv">duration</span><span class="p">:</span> <span class="kt">Double</span><span class="p">,</span> <span class="nv">hideDelay</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="mi">0</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>duration</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The duration, in seconds, of the animation.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>hideDelay</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The time to delay, in seconds.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FC14CircleMenuDemo10CircleMenu14buttonsIsShownFT_Sb"></a>
|
||||
<a name="//apple_ref/swift/Method/buttonsIsShown()" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FC14CircleMenuDemo10CircleMenu14buttonsIsShownFT_Sb">buttonsIsShown()</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Check is sub buttons showed</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">buttonsIsShown</span><span class="p">()</span> <span class="o">-></span> <span class="kt">Bool</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
@@ -13,12 +13,12 @@
|
||||
<a title="Protocols Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
Protocols Reference
|
||||
</p>
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -76,19 +54,19 @@
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<div class="task-name-container">
|
||||
<a name="/Protocol%20"></a>
|
||||
<a name="//apple_ref/swift/Section/Protocol " class="dashAnchor"></a>
|
||||
<a href="#/Protocol%20">
|
||||
<h3 class="section-name">Protocol </h3>
|
||||
<a name="/Protocol"></a>
|
||||
<a name="//apple_ref/swift/Section/Protocol" class="dashAnchor"></a>
|
||||
<a href="#/Protocol">
|
||||
<h3 class="section-name">Protocol</h3>
|
||||
</a>
|
||||
</div>
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:P10CircleMenu18CircleMenuDelegate"></a>
|
||||
<a name="/s:P14CircleMenuDemo18CircleMenuDelegate"></a>
|
||||
<a name="//apple_ref/swift/Protocol/CircleMenuDelegate" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:P10CircleMenu18CircleMenuDelegate">CircleMenuDelegate</a>
|
||||
<a class="token" href="#/s:P14CircleMenuDemo18CircleMenuDelegate">CircleMenuDelegate</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
@@ -96,10 +74,18 @@
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Undocumented</p>
|
||||
<p>CircleMenuDelegate</p>
|
||||
|
||||
<a href="Protocols/CircleMenuDelegate.html" class="slightly-smaller">See more</a>
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">@objc</span> <span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">CircleMenuDelegate</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
@@ -108,7 +94,7 @@
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
@@ -0,0 +1,342 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenuDelegate Protocol Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
<script src="../js/jquery.min.js" defer></script>
|
||||
<script src="../js/jazzy.js" defer></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a name="//apple_ref/swift/Protocol/CircleMenuDelegate" class="dashAnchor"></a>
|
||||
<a title="CircleMenuDelegate Protocol Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="../index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="../index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="../img/carat.png" />
|
||||
CircleMenuDelegate Protocol Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
<nav class="sidebar">
|
||||
<ul class="nav-groups">
|
||||
<li class="nav-group-name">
|
||||
<a href="../Classes.html">Classes</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="../Protocols.html">Protocols</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="../Protocols/CircleMenuDelegate.html">CircleMenuDelegate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<article class="main-content">
|
||||
<section>
|
||||
<section class="section">
|
||||
<h1>CircleMenuDelegate</h1>
|
||||
<div class="declaration">
|
||||
<div class="language">
|
||||
<pre class="highlight"><code><span class="kd">@objc</span> <span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">CircleMenuDelegate</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<p>CircleMenuDelegate</p>
|
||||
|
||||
</section>
|
||||
<section class="section task-group-section">
|
||||
<div class="task-group">
|
||||
<ul>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu11willDisplayCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:willDisplay:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu11willDisplayCSo8UIButton7atIndexSi_T_">circleMenu(_:willDisplay:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Tells the delegate the circle menu is about to draw a button for a particular index.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">willDisplay</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>The circle menu object informing the delegate of this impending event.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu button object that circle menu is going to use when drawing the row. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>An button index.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu18buttonWillSelectedCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonWillSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu18buttonWillSelectedCSo8UIButton7atIndexSi_T_">circleMenu(_:buttonWillSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Tells the delegate that a specified index is about to be selected.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonWillSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the impending selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A selected circle menu button. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Selected button index</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu17buttonDidSelectedCSo8UIButton7atIndexSi_T_"></a>
|
||||
<a name="//apple_ref/swift/Method/circleMenu(_:buttonDidSelected:atIndex:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate10circleMenuFTCS_10CircleMenu17buttonDidSelectedCSo8UIButton7atIndexSi_T_">circleMenu(_:buttonDidSelected:atIndex:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Tells the delegate that the specified index is now selected.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonDidSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">UIButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the new index selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>button</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A selected circle menu button. Don’t change button.tag</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>atIndex</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>Selected button index</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
<li class="item">
|
||||
<div>
|
||||
<code>
|
||||
<a name="/s:FP14CircleMenuDemo18CircleMenuDelegate13menuCollapsedFCS_10CircleMenuT_"></a>
|
||||
<a name="//apple_ref/swift/Method/menuCollapsed(_:)" class="dashAnchor"></a>
|
||||
<a class="token" href="#/s:FP14CircleMenuDemo18CircleMenuDelegate13menuCollapsedFCS_10CircleMenuT_">menuCollapsed(_:)</a>
|
||||
</code>
|
||||
</div>
|
||||
<div class="height-container">
|
||||
<div class="pointer-container"></div>
|
||||
<section class="section">
|
||||
<div class="pointer"></div>
|
||||
<div class="abstract">
|
||||
<p>Tells the delegate that the menu was collapsed - the cancel action.</p>
|
||||
|
||||
</div>
|
||||
<div class="declaration">
|
||||
<h4>Declaration</h4>
|
||||
<div class="language">
|
||||
<p class="aside-title">Swift</p>
|
||||
<pre class="highlight"><code><span class="kd">optional</span> <span class="kd">func</span> <span class="nf">menuCollapsed</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">)</span></code></pre>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4>Parameters</h4>
|
||||
<table class="graybox">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<code>
|
||||
<em>circleMenu</em>
|
||||
</code>
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<p>A circle menu object informing the delegate about the new index selection.</p>
|
||||
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
</body>
|
||||
</div>
|
||||
</html>
|
||||
|
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 274 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,7 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenu Reference</title>
|
||||
<title>CircleMenuDemo Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
@@ -10,17 +10,17 @@
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="CircleMenu Reference"></a>
|
||||
<a title="CircleMenuDemo Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
CircleMenu Reference
|
||||
CircleMenuDemo Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -70,23 +48,39 @@
|
||||
<section>
|
||||
<section class="section">
|
||||
|
||||
<p><a href="http://twitter.com/Ramotion"><img src="https://img.shields.io/badge/Twitter-@Ramotion-blue.svg?style=flat" alt="Twitter"></a>
|
||||
<p><img src="./header.png" alt="header"></p>
|
||||
<a href='#circlemenu' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='circlemenu'>CircleMenu</h1>
|
||||
|
||||
<p><a href="http://twitter.com/Ramotion"><img src="https://img.shields.io/badge/Twitter-@Ramotion-blue.svg?style=flat" alt="Twitter"></a>
|
||||
<a href="https://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/p/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="http://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/v/CircleMenu.svg" alt="CocoaPods"></a></p>
|
||||
<a href='#circle_menu' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='circle_menu'>circle-menu</h1>
|
||||
<a href="http://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/v/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="https://cdn.rawgit.com/Ramotion/circle-menu/master/docs/index.html"><img src="https://img.shields.io/cocoapods/metrics/doc-percent/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="https://github.com/Ramotion/circle-menu"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage compatible"></a>
|
||||
<a href="https://codebeat.co/projects/github-com-ramotion-circle-menu"><img src="https://codebeat.co/badges/6f67da5d-c416-4bac-9fb7-c2dc938feedc" alt="codebeat badge"></a>
|
||||
<a href="https://travis-ci.org/Ramotion/circle-menu"><img src="https://img.shields.io/travis/Ramotion/circle-menu.svg" alt="Travis"></a></p>
|
||||
|
||||
<p><a href="https://dribbble.com/shots/2534780-Circle-Menu-Swift-Open-Source">shot on dribbble:</a>
|
||||
<img src="./preview.gif" alt="preview"></p>
|
||||
|
||||
<p>The <a href="https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu">iPhone mockup</a> available <a href="https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu">here</a>.</p>
|
||||
<a href='#requirements' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='requirements'>Requirements</h2>
|
||||
|
||||
<ul>
|
||||
<li>iOS 8.0+</li>
|
||||
<li>Xcode 7.2</li>
|
||||
<li>Xcode 7.3</li>
|
||||
</ul>
|
||||
<a href='#installation' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='installation'>Installation</h2>
|
||||
|
||||
<p>Just add CircleMenuLib folder to your project.</p>
|
||||
|
||||
<p>or use <a href="https://cocoapods.org">CocoaPods</a> with Podfile:</p>
|
||||
<pre class="highlight ruby"><code><span class="n">pod</span> <span class="s1">'CircleMenu'</span><span class="p">,</span> <span class="s1">'~> 0.0.5'</span>
|
||||
<pre class="highlight ruby"><code><span class="n">pod</span> <span class="s1">'CircleMenu'</span><span class="p">,</span> <span class="s1">'~> 1.0.0'</span>
|
||||
</code></pre>
|
||||
|
||||
<p>or <a href="https://github.com/Carthage/Carthage">Carthage</a> users can simply add to their <code>Cartfile</code>:
|
||||
<code>
|
||||
github "Ramotion/circle-menu"
|
||||
</code></p>
|
||||
<a href='#usage' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='usage'>Usage</h2>
|
||||
<a href='#with_storyboard' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h5 id='with_storyboard'>with storyboard</h5>
|
||||
|
||||
@@ -124,10 +118,13 @@
|
||||
|
||||
<span class="c1">// call after animation</span>
|
||||
<span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonDidSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">CircleMenuButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span>
|
||||
|
||||
<span class="c1">// call upon cancel of the menu</span>
|
||||
<span class="kd">optional</span> <span class="kd">func</span> <span class="nf">menuCollapsed</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">)</span>
|
||||
</code></pre>
|
||||
<a href='#licence' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='licence'>Licence</h2>
|
||||
|
||||
<p>Adaptive tab bar is released under the MIT license.
|
||||
<p>Circle menu is released under the MIT license.
|
||||
See <a href="./LICENSE">LICENSE</a> for details.</p>
|
||||
<a href='#about' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='about'>About</h2>
|
||||
|
||||
@@ -140,7 +137,7 @@ See our other <a href="https://github.com/ramotion">open-source projects</a> or
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
@@ -0,0 +1,4 @@
|
||||
CircleMenuButton.swift
|
||||
internal class CircleMenuButton : UIButton
|
||||
CircleMenu.swift
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
@@ -1,7 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>CircleMenu Reference</title>
|
||||
<title>CircleMenuDemo Reference</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
|
||||
<meta charset='utf-8'>
|
||||
@@ -10,17 +10,17 @@
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<a title="CircleMenu Reference"></a>
|
||||
<a title="CircleMenuDemo Reference"></a>
|
||||
<header>
|
||||
<div class="content-wrapper">
|
||||
<p><a href="index.html">CircleMenu Docs</a> (3% documented)</p>
|
||||
<p><a href="index.html">CircleMenuDemo Docs</a> (87% documented)</p>
|
||||
</div>
|
||||
</header>
|
||||
<div class="content-wrapper">
|
||||
<p id="breadcrumbs">
|
||||
<a href="index.html">CircleMenu Reference</a>
|
||||
<a href="index.html">CircleMenuDemo Reference</a>
|
||||
<img id="carat" src="img/carat.png" />
|
||||
CircleMenu Reference
|
||||
CircleMenuDemo Reference
|
||||
</p>
|
||||
</div>
|
||||
<div class="content-wrapper">
|
||||
@@ -32,28 +32,6 @@
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenu.html">CircleMenu</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuButton.html">CircleMenuButton</a>
|
||||
</li>
|
||||
<li class="nav-group-task">
|
||||
<a href="Classes/CircleMenuLoader.html">CircleMenuLoader</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Extensions.html">Extensions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Extensions/UIView.html">UIView</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
<a href="Functions.html">Functions</a>
|
||||
<ul class="nav-group-tasks">
|
||||
<li class="nav-group-task">
|
||||
<a href="Functions.html#/s:F10CircleMenu4IniturFTq_5blockFT6objectq__T__q_">Init(_:block:)</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-group-name">
|
||||
@@ -70,23 +48,39 @@
|
||||
<section>
|
||||
<section class="section">
|
||||
|
||||
<p><a href="http://twitter.com/Ramotion"><img src="https://img.shields.io/badge/Twitter-@Ramotion-blue.svg?style=flat" alt="Twitter"></a>
|
||||
<p><img src="./header.png" alt="header"></p>
|
||||
<a href='#circlemenu' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='circlemenu'>CircleMenu</h1>
|
||||
|
||||
<p><a href="http://twitter.com/Ramotion"><img src="https://img.shields.io/badge/Twitter-@Ramotion-blue.svg?style=flat" alt="Twitter"></a>
|
||||
<a href="https://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/p/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="http://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/v/CircleMenu.svg" alt="CocoaPods"></a></p>
|
||||
<a href='#circle_menu' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='circle_menu'>circle-menu</h1>
|
||||
<a href="http://cocoapods.org/pods/CircleMenu"><img src="https://img.shields.io/cocoapods/v/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="https://cdn.rawgit.com/Ramotion/circle-menu/master/docs/index.html"><img src="https://img.shields.io/cocoapods/metrics/doc-percent/CircleMenu.svg" alt="CocoaPods"></a>
|
||||
<a href="https://github.com/Ramotion/circle-menu"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage compatible"></a>
|
||||
<a href="https://codebeat.co/projects/github-com-ramotion-circle-menu"><img src="https://codebeat.co/badges/6f67da5d-c416-4bac-9fb7-c2dc938feedc" alt="codebeat badge"></a>
|
||||
<a href="https://travis-ci.org/Ramotion/circle-menu"><img src="https://img.shields.io/travis/Ramotion/circle-menu.svg" alt="Travis"></a></p>
|
||||
|
||||
<p><a href="https://dribbble.com/shots/2534780-Circle-Menu-Swift-Open-Source">shot on dribbble:</a>
|
||||
<img src="./preview.gif" alt="preview"></p>
|
||||
|
||||
<p>The <a href="https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu">iPhone mockup</a> available <a href="https://store.ramotion.com/product/iphone-6-mockups?utm_source=gthb&utm_medium=special&utm_campaign=circle-menu">here</a>.</p>
|
||||
<a href='#requirements' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='requirements'>Requirements</h2>
|
||||
|
||||
<ul>
|
||||
<li>iOS 8.0+</li>
|
||||
<li>Xcode 7.2</li>
|
||||
<li>Xcode 7.3</li>
|
||||
</ul>
|
||||
<a href='#installation' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='installation'>Installation</h2>
|
||||
|
||||
<p>Just add CircleMenuLib folder to your project.</p>
|
||||
|
||||
<p>or use <a href="https://cocoapods.org">CocoaPods</a> with Podfile:</p>
|
||||
<pre class="highlight ruby"><code><span class="n">pod</span> <span class="s1">'CircleMenu'</span><span class="p">,</span> <span class="s1">'~> 0.0.5'</span>
|
||||
<pre class="highlight ruby"><code><span class="n">pod</span> <span class="s1">'CircleMenu'</span><span class="p">,</span> <span class="s1">'~> 1.0.0'</span>
|
||||
</code></pre>
|
||||
|
||||
<p>or <a href="https://github.com/Carthage/Carthage">Carthage</a> users can simply add to their <code>Cartfile</code>:
|
||||
<code>
|
||||
github "Ramotion/circle-menu"
|
||||
</code></p>
|
||||
<a href='#usage' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='usage'>Usage</h2>
|
||||
<a href='#with_storyboard' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h5 id='with_storyboard'>with storyboard</h5>
|
||||
|
||||
@@ -124,10 +118,13 @@
|
||||
|
||||
<span class="c1">// call after animation</span>
|
||||
<span class="kd">optional</span> <span class="kd">func</span> <span class="nf">circleMenu</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">,</span> <span class="n">buttonDidSelected</span> <span class="nv">button</span><span class="p">:</span> <span class="kt">CircleMenuButton</span><span class="p">,</span> <span class="nv">atIndex</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span>
|
||||
|
||||
<span class="c1">// call upon cancel of the menu</span>
|
||||
<span class="kd">optional</span> <span class="kd">func</span> <span class="nf">menuCollapsed</span><span class="p">(</span><span class="nv">circleMenu</span><span class="p">:</span> <span class="kt">CircleMenu</span><span class="p">)</span>
|
||||
</code></pre>
|
||||
<a href='#licence' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='licence'>Licence</h2>
|
||||
|
||||
<p>Adaptive tab bar is released under the MIT license.
|
||||
<p>Circle menu is released under the MIT license.
|
||||
See <a href="./LICENSE">LICENSE</a> for details.</p>
|
||||
<a href='#about' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='about'>About</h2>
|
||||
|
||||
@@ -140,7 +137,7 @@ See our other <a href="https://github.com/ramotion">open-source projects</a> or
|
||||
</section>
|
||||
</section>
|
||||
<section id="footer">
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">Juri Vasylenko</a>. All rights reserved. (Last updated: 2016-02-11)</p>
|
||||
<p>© 2016 <a class="link" href="https://github.com/Ramotion/circle-menu" target="_blank" rel="external">AlexKalinkin</a>. All rights reserved. (Last updated: 2016-06-27)</p>
|
||||
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.5.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
|
||||
</section>
|
||||
</article>
|
||||
|
||||
@@ -1,37 +1,4 @@
|
||||
CircleMenuButton.swift
|
||||
public class CircleMenuButton: UIButton
|
||||
public weak var container: UIView?
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func rotatedZ(angle angle: Float, animated: Bool, duration: Double = 0, delay: Double = 0)
|
||||
public class CircleMenuButton : UIButton
|
||||
public func showAnimation(distance distance: Float, duration: Double, delay: Double = 0)
|
||||
public func hideAnimation(distance distance: Float, duration: Double, delay: Double = 0)
|
||||
public func changeDistance(distance: CGFloat, animated: Bool, duration: Double = 0, delay: Double = 0)
|
||||
public func rotationLayerAnimation(angle: Float, duration: Double)
|
||||
public func rotationLayerAnimation(view: UIView, angle: Float, duration: Double)
|
||||
CircleMenuLoader.swift
|
||||
public class CircleMenuLoader: UIView
|
||||
public init(radius: CGFloat, strokeWidth: CGFloat, circleMenu: CircleMenu, color: UIColor?)
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func fillAnimation(duration: Double, startAngle: Float)
|
||||
public func hideAnimation(duration: CGFloat, delay: Double)
|
||||
internal class CircleMenuButton : UIButton
|
||||
CircleMenu.swift
|
||||
public func Init<Type>(value: Type, @noescape block: (object: Type) -> Void) -> Type
|
||||
@objc public protocol CircleMenuDelegate
|
||||
optional func circleMenu(circleMenu: CircleMenu, willDisplay button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonWillSelected button: CircleMenuButton, atIndex: Int)
|
||||
optional func circleMenu(circleMenu: CircleMenu, buttonDidSelected button: CircleMenuButton, atIndex: Int)
|
||||
public class CircleMenu: UIButton
|
||||
@IBInspectable public var buttonsCount: Int = 3
|
||||
@IBInspectable public var duration: Double = 2 // circle animation duration
|
||||
@IBInspectable public var distance: Float = 100 // distance between center button and buttons
|
||||
@IBInspectable public var showDelay: Double = 0 // delay between show buttons
|
||||
@IBOutlet weak public var delegate: AnyObject? //CircleMenuDelegate
|
||||
public init(frame: CGRect,
|
||||
normalIcon: String?,
|
||||
selectedIcon: String?,
|
||||
buttonsCount: Int = 3,
|
||||
duration: Double = 2,
|
||||
distance: Float = 100)
|
||||
required public init?(coder aDecoder: NSCoder)
|
||||
public func buttonsIsShown() -> Bool
|
||||
|
||||
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |