├── .DS_Store
├── QM_pragma.codesnippet
├── QM_strongSelf.codesnippet
├── QM_weakSelf.codesnippet
├── QM_CGRectGetMinX.codesnippet
├── QM_CGRectGetMinY.codesnippet
├── QM_CGRectGetWidth.codesnippet
├── QM_CGRectGetHeight.codesnippet
├── QM_property_copy.codesnippet
├── QM_property_weak.codesnippet
├── QM_property_assign.codesnippet
├── QM_property_strong.codesnippet
├── QM_static_var.codesnippet
├── QM_extern_reference_h.codesnippet
├── QM_function_void.codesnippet
├── QM_extern_value_m.codesnippet
├── QM_extern_reference_m.codesnippet
├── QM_property_weak_readonly.codesnippet
├── QM_static_var_reference.codesnippet
├── QMUI_setFrameX.codesnippet
├── QMUI_setFrameY.codesnippet
├── QM_nslog.codesnippet
├── QM_property_assign_readonly.codesnippet
├── QM_property_strong_readonly.codesnippet
├── QM_setImageForButton.codesnippet
├── QM_viewDidLoad.codesnippet
├── QMUI_barButtonItem_back.codesnippet
├── QMUI_didInitialized.codesnippet
├── QMUI_setFrameXY.codesnippet
├── QM_block_as_property.codesnippet
├── QM_function_void_argument.codesnippet
├── QM_extern_value_h.codesnippet
├── QM_viewDidAppear.codesnippet
├── QM_viewWillAppear.codesnippet
├── QMUI_barButtonItem_title.codesnippet
├── QM_addTarget.codesnippet
├── QM_log.codesnippet
├── QMUI_barButtonItem_image.codesnippet
├── QM_viewDidDisappear.codesnippet
├── QM_viewDidLayoutSubviews.codesnippet
├── QM_loadView.codesnippet
├── QM_viewWillDisappear.codesnippet
├── QMUI_barButtonItem_boldTitle.codesnippet
├── QMUI_load.codesnippet
├── QM_block_typedef.codesnippet
├── QMUI_setFrame.codesnippet
├── QM_logCallStackSymbols.codesnippet
├── QMUI_barButtonItem_close.codesnippet
├── QM_block_var.codesnippet
├── QMUI_initSubviews.codesnippet
├── QM_dispatch_main.codesnippet
├── QM_setTitleForButton.codesnippet
├── QM_block_as_argument.codesnippet
├── QM_deprecated.codesnippet
├── QM_layoutSubviews.codesnippet
├── QM_block_as_argument_in_Function.codesnippet
├── QM_setFrame.codesnippet
├── QM_setTitleColorForButton.codesnippet
├── rac_kvo.codesnippet
├── QM_function_handleEvent.codesnippet
├── QMUI_setupToolbarItems.codesnippet
├── QM_function_handlePan.codesnippet
├── QM_function_handleTap.codesnippet
├── QM_updateConstraints.codesnippet
├── QMUI_didInitializedWithStyle_cell.codesnippet
├── QM_function_return_block.codesnippet
├── QMUI_didInitializedWithStyle.codesnippet
├── QM_ifOSavailable.codesnippet
├── QM_timeConsuming.codesnippet
├── QM_updateViewConstraints.codesnippet
├── QM_dispatch_global.codesnippet
├── QM_function_handleLongPress.codesnippet
├── QM_property_copy_readonly.codesnippet
├── QM_initWithNib.codesnippet
├── QM_numberOfSectionsInTableView.codesnippet
├── QM_didSelectRowAtIndexPath.codesnippet
├── QM_numberOfRowsInSection.codesnippet
├── QMUI_extendVoidReturnNonArgv.codesnippet
├── QM_didSelectItemAtIndexPath.codesnippet
├── QM_heightForRowAtIndexPath.codesnippet
├── QM_didDeselectItemAtIndexPath.codesnippet
├── LICENSE
├── QM_numberOfItemsInSection.codesnippet
├── QM_numberOfSectionsInCollectionView.codesnippet
├── QM_tableView_initWithStyle.codesnippet
├── QMUI_setupNavigationItems.codesnippet
├── QM_tableView_insetNever.codesnippet
├── QMUI_exchangeImplementation.codesnippet
├── QMUI_extendVoidReturnSingleArgv.codesnippet
├── QM_sizeThatFits.codesnippet
├── QM_sizeForItemAtIndexPath.codesnippet
├── QMUI_extendNonVoidReturnNonArgv.codesnippet
├── QM_removeFromParentViewController.codesnippet
├── QMUI_extendVoidReturnTwoArgvs.codesnippet
├── QM_sharedInstance.codesnippet
├── QM_addChildViewController.codesnippet
├── QMUI_extendNonVoidReturnSingleArgv.codesnippet
├── QM_tableViewCell_initWithStyle.codesnippet
├── QM_cellForItemAtIndexPath.codesnippet
├── QM_property_swizzle_weak.codesnippet
├── QM_property_swizzle_copy.codesnippet
├── QM_property_swizzle_strong.codesnippet
├── QMUI_extendNonVoidReturnTwoArgvs.codesnippet
├── QM_property_swizzle_assign.codesnippet
├── rac_combine.codesnippet
├── QM_cellForRowAtIndexPath.codesnippet
├── QMUI_overrideNonVoidReturnNonArgv.codesnippet
├── QMUI_overrideVoidReturnNonArgv.codesnippet
├── QMUI_overrideVoidReturnSingleArgv.codesnippet
├── QMUI_exchangeMultipleImplementations.codesnippet
├── QM_collectionViewDelegate.codesnippet
├── QMUI_property_swizzle_weak.codesnippet
├── QMUI_overrideNonVoidReturnSingleArgv.codesnippet
├── QMUI_overrideVoidReturnTwoArgvs.codesnippet
├── QMUI_overrideNonVoidReturnTwoArgvs.codesnippet
├── QM_tableViewDelegate.codesnippet
├── QM_exchangeImplementation.codesnippet
└── README.md
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/QMUI/QMUI_iOS_CodeSnippets/HEAD/.DS_Store
--------------------------------------------------------------------------------
/QM_pragma.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pragma
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | #pragma mark - <#Section#>
13 | IDECodeSnippetIdentifier
14 | 3B9FA813-1CC1-4973-A55D-FAC087F2F75D
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Pragma Mark
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_strongSelf.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | __strongSelf
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | __strong __typeof(weakSelf)strongSelf = weakSelf;
13 | IDECodeSnippetIdentifier
14 | strongSelf
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | strongSelf
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_weakSelf.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | __weakSelf
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | __weak __typeof(self)weakSelf = self;
13 | IDECodeSnippetIdentifier
14 | 1AD3496A-7B93-4B60-9C5D-E54FC734E544
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | weakSelf
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_CGRectGetMinX.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | getMinX
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | CGRectGetMinX(<#CGRect rect#>)
13 | IDECodeSnippetIdentifier
14 | 1CDEB4B5-75D6-4F04-B8E6-BCEA1A54FE18
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | CGRectGetMinX
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_CGRectGetMinY.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | getMinY
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | CGRectGetMinY(<#CGRect rect#>)
13 | IDECodeSnippetIdentifier
14 | 6B079320-8812-48E4-ABE9-6303E529ADCA
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | CGRectGetMinY
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_CGRectGetWidth.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | getWidth
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | CGRectGetWidth(<#CGRect rect#>)
13 | IDECodeSnippetIdentifier
14 | 85AFEEE5-547B-4995-8E1D-03EF58452DE2
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | CGRectGetWidth
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_CGRectGetHeight.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | getHeight
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | CGRectGetHeight(<#CGRect rect#>)
13 | IDECodeSnippetIdentifier
14 | A4384427-2E28-4CBD-93EB-B9C7DE21404D
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | CGRectGetHeight
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_copy.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pc
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, copy) <#type#> *<#name#>;
13 | IDECodeSnippetIdentifier
14 | 8B1C05A2-7F9D-4877-9A2A-69BC4CD1E990
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Copy
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_weak.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pw
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, weak) <#type#> *<#name#>;
13 | IDECodeSnippetIdentifier
14 | 6CD5E87E-5EB3-4F2E-9C87-81F5BA9EA5FC
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Weak
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_assign.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pa
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, assign) <#type#> <#name#>;
13 | IDECodeSnippetIdentifier
14 | 9F96E543-5450-452B-9CA8-8BCCD8D841ED
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Assign
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_strong.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | ps
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, strong) <#type#> *<#name#>;
13 | IDECodeSnippetIdentifier
14 | C6CF2F16-53B9-4033-B217-89868A294BE8
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Strong
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_static_var.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | static
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | static <#type#> const k<#Name#> = <#value#>;
13 | IDECodeSnippetIdentifier
14 | 95ACDF4B-E74F-4A04-9774-8644C48E20DC
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | static const value
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_extern_reference_h.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | externRefInH
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | extern <#type#> *const <#name#>;
13 | IDECodeSnippetIdentifier
14 | 21FDCAF1-C5B5-4F0C-A9EE-895654127294
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | extern Reference in *.h file
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_function_void.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)<#method name#> {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 6B47EC5A-B22B-4155-8C3F-632CCDFC4502
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | 创建一个返回值为空的方法
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_extern_value_m.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | externValueInM
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | const <#type#> <#name#> = <#value#>;
13 | IDECodeSnippetIdentifier
14 | 1063BE8C-95DF-44E4-B09A-60EAC0047FCC
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | extern Value in *.m file
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_extern_reference_m.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | externRefInM
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | <#type#> *const <#name#> = <#value#>;
13 | IDECodeSnippetIdentifier
14 | 05ACBB91-A78D-402C-807A-47886AD29A07
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | extern Reference in *.m file
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_weak_readonly.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pwr
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, weak, readonly) <#type#> *<#name#>;
13 | IDECodeSnippetIdentifier
14 | 3BDAAACA-931A-43D6-B7B4-A446285E098B
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Weak And Readonly
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_static_var_reference.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | static reference
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | static <#type#> * const k<#name#> = <#value#>;
13 | IDECodeSnippetIdentifier
14 | 9365F43F-CDAB-444A-A5CD-D5E5CEAD614B
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | static const reference
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QMUI_setFrameX.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setFrameX
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#view#>.frame = CGRectSetX(<#view#>.frame, <#x#>);
13 | IDECodeSnippetIdentifier
14 | 5BEF295B-A1FA-4AEB-8148-C9E14BD56B43
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | set UIView frame X with QMUI CGRectSetX
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QMUI_setFrameY.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setFrameY
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#view#>.frame = CGRectSetY(<#view#>.frame, <#y#>);
13 | IDECodeSnippetIdentifier
14 | B5531524-A9B1-4FC3-AB9C-81C93EA6F201
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | set UIView frame Y with QMUI CGRectSetY
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_nslog.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | log
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 | CodeBlock
11 |
12 | IDECodeSnippetContents
13 | NSLog(@"<##>");
14 | IDECodeSnippetIdentifier
15 | 357607DE-337B-4943-8F27-9CA1EE722BF7
16 | IDECodeSnippetLanguage
17 | Xcode.SourceCodeLanguage.Objective-C
18 | IDECodeSnippetSummary
19 |
20 | IDECodeSnippetTitle
21 | NSLog
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_property_assign_readonly.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | par
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, assign, readonly) <#type#> <#name#>;
13 | IDECodeSnippetIdentifier
14 | 32E2254E-F2F6-419B-B581-B6885C95A62B
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Assign And Readonly
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_property_strong_readonly.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | psr
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, strong, readonly) <#type#> *<#name#>;
13 | IDECodeSnippetIdentifier
14 | 7673BB72-6355-4D45-B6D7-E36B4A79C835
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Strong And Readonly
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_setImageForButton.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setImageForButton
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [<#button#> setImage:<#image#> forState:UIControlStateNormal];
13 | IDECodeSnippetIdentifier
14 | EC69F79A-C822-4381-ACE7-82BA4ED97D27
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | set UIButton Image
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_viewDidLoad.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewDidLoad
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewDidLoad {
13 | [super viewDidLoad];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 2C6B159A-D934-44B7-B110-1BF1D4B89707
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewDidLoad
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QMUI_barButtonItem_back.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | backItem
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | [UIBarButtonItem qmui_backItemWithTarget:self action:@selector(<#selector name#>)];
13 | IDECodeSnippetIdentifier
14 | 47B97B84-8A9F-4862-B658-AC7849E83C75
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Back UIBarButtonItem
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QMUI_didInitialized.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didInitialize
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)didInitialize {
13 | [super didInitialize];
14 | <##>
15 | }
16 | IDECodeSnippetIdentifier
17 | 34DD9E8F-5AF0-4CD0-9A6C-B3E4C7CCBD7F
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | didInitialize
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QMUI_setFrameXY.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setFrameXY
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#view#>.frame = CGRectSetXY(<#view#>.frame, <#x#>, <#y#>);
13 | IDECodeSnippetIdentifier
14 | 29616EC2-81E1-4AF5-8AD9-96DEED51B264
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | set UIView frame XY with QMUI CGRectSetXY
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_block_as_property.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | blockproperty
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | @property(nonatomic, copy) <#returnType#> (^<#blockName#>)(<#parameterTypes#>);
13 | IDECodeSnippetIdentifier
14 | B84470B1-B180-401B-8C53-43390D9124DA
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Property For Block
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_function_void_argument.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv:
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)<#method name#>:(<#argv type#>)<#argv#> {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 36A99A40-AF77-4CCA-8FF3-E1587F48F239
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | 创建一个返回值为空并且带参数的方法
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_extern_value_h.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | externValueInH
7 | IDECodeSnippetCompletionScopes
8 |
9 | TopLevel
10 |
11 | IDECodeSnippetContents
12 | extern const <#type#> <#name#>;
13 | IDECodeSnippetIdentifier
14 | 3F020BCC-5E6C-4538-A470-1E124BB4DBAE
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetSummary
18 |
19 | IDECodeSnippetTitle
20 | extern Value in *.h file
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_viewDidAppear.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewDidAppear
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewDidAppear:(BOOL)animated {
13 | [super viewDidAppear:animated];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | A9456DBA-B19F-41E2-B5E5-9928DAF8CCFE
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewDidAppear:
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_viewWillAppear.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewWillAppear
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewWillAppear:(BOOL)animated {
13 | [super viewWillAppear:animated];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | F9DAF84E-4DCA-4AEB-B90D-16B40624932B
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewWillAppear:
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QMUI_barButtonItem_title.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | titleItem
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | [UIBarButtonItem qmui_itemWithTitle:<#(nullable NSString *)#> target:self action:@selector(<#selector name#>)];
13 | IDECodeSnippetIdentifier
14 | 43063D01-168F-43E2-B0D4-10A07FA19445
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Title UIBarButtonItem
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_addTarget.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | addtarget
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [<#control#> addTarget:self action:@selector(handle<#controlName#>Event:) forControlEvents:UIControlEventTouchUpInside];
13 | IDECodeSnippetIdentifier
14 | 799325FD-C68C-4BD4-AFE5-F398D97107F6
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | UIControl Add Target
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_log.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | log
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | NSLog(@"<##>");
13 | IDECodeSnippetIdentifier
14 | 5DD6260F-35C7-46BA-A7FD-B0FD4B55BCE2
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetSummary
20 |
21 | IDECodeSnippetTitle
22 | NSLog
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QMUI_barButtonItem_image.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | imageItem
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | [UIBarButtonItem qmui_itemWithImage:UIImageMake(@"<#image name#>") target:self action:@selector(<#selector name#>)];
13 | IDECodeSnippetIdentifier
14 | 3A422B1A-0422-41EC-8CB7-D7B961CDC76D
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Image UIBarButtonItem
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_viewDidDisappear.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewDidDisappear
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewDidDisappear:(BOOL)animated {
13 | [super viewDidDisappear:animated];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 7FA93830-68A9-4F6F-B87E-F9304B210C4B
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewDidDisappear:
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_viewDidLayoutSubviews.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewDidLayoutSubviews
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewDidLayoutSubviews {
13 | [super viewDidLayoutSubviews];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 494D85BB-30BB-434A-9383-2B0CAD69B785
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewDidLayoutSubviews
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_loadView.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | loadView
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)loadView {
13 | self.view = <#custom view#>;
14 | }
15 | IDECodeSnippetIdentifier
16 | 94A53770-ED4C-4395-AB15-CCA346BF2904
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | loadView
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_viewWillDisappear.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | viewWillDisappear
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)viewWillDisappear:(BOOL)animated {
13 | [super viewWillDisappear:animated];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | E351FBA5-DDEF-4EC3-970E-8EA7F6CCF579
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | viewWillDisappear:
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QMUI_barButtonItem_boldTitle.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | boldTitleItem
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | [UIBarButtonItem qmui_itemWithBoldTitle:<#(nullable NSString *)#> target:self action:@selector(<#selector name#>)];
13 | IDECodeSnippetIdentifier
14 | 5A3AB4AB-26DC-4402-BE47-D87BF8D620E0
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | Bold Title UIBarButtonItem
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QMUI_load.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | load_once
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | + (void)load {
13 | static dispatch_once_t onceToken;
14 | dispatch_once(&onceToken, ^{
15 | <##>
16 | });
17 | }
18 | IDECodeSnippetIdentifier
19 | 9A2482AB-93D8-457A-8D67-221379784E4A
20 | IDECodeSnippetLanguage
21 | Xcode.SourceCodeLanguage.Objective-C
22 | IDECodeSnippetTitle
23 | load dispatch once
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_block_typedef.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | blocktypedef
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | typedef <#returnType#> (^<#blockName#>)(<#arguments#>);
13 | IDECodeSnippetIdentifier
14 | 80FEABC7-1C63-4C3F-A937-D0E3D8D04100
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetSummary
18 | block的typedef定义
19 | IDECodeSnippetTitle
20 | typedef block
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QMUI_setFrame.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setFrame_QMUI
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#view#>.frame = CGRectFlatMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>);
13 | IDECodeSnippetIdentifier
14 | 0E66F758-D976-483F-A71A-1B94A8ADA34A
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetTitle
18 | set UIView frame with QMUI CGRectFlatMake
19 | IDECodeSnippetUserSnippet
20 |
21 | IDECodeSnippetVersion
22 | 2
23 |
24 |
25 |
--------------------------------------------------------------------------------
/QM_logCallStackSymbols.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | logCallStackSymbols
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | NSLog(@"Call Stack: %@", [NSThread callStackSymbols]);
13 | IDECodeSnippetIdentifier
14 | 9CDCCD18-A33D-48DF-8363-F028E1465EC2
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetTitle
20 | print stack symbols
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QMUI_barButtonItem_close.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | closeItem
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | [UIBarButtonItem qmui_closeItemWithTarget:self action:@selector(<#selector name#>)];
13 | IDECodeSnippetIdentifier
14 | F68179BA-29CA-48D0-8F20-54CE21E05920
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Generic
17 | IDECodeSnippetSummary
18 |
19 | IDECodeSnippetTitle
20 | Close UIBarButtonItem
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_block_var.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | blockvar
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | <#returnType#> (^<#blockName#>)(<#parameterTypes#>) = ^<#returnType#>(<#parameters#>) {
13 | <#code#>
14 | };
15 | IDECodeSnippetIdentifier
16 | A403E0E0-2CE2-4A82-B921-BEE3F46DB93C
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | 作为局部变量的block定义
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QMUI_initSubviews.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | initSubviews
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)initSubviews {
13 | [super initSubviews];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 17B909FE-8769-4CD4-9C0E-5888E770FF00
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | initSubviews
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_dispatch_main.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | dispatch_async_main
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | dispatch_async(dispatch_get_main_queue(), ^{
13 | <##>
14 | });
15 | IDECodeSnippetIdentifier
16 | 8B578048-CFFE-46DF-BB25-3DF5382557DB
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | dispatch async main queue
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_setTitleForButton.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setTitleForButton
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [<#button#> setTitle:@"<#title#>" forState:UIControlStateNormal];
13 | IDECodeSnippetIdentifier
14 | 23208581-6DAE-46C3-BCE0-35025AFDCB62
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetTitle
20 | set UIButton Title
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_block_as_argument.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | blockParameterInMethod
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | (<#returnType#> (^)(<#parameterTypes#>))<#blockName#>
13 | IDECodeSnippetIdentifier
14 | B0665B7F-4534-4DBA-A986-4CD8B7574215
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetSummary
18 | OC方法参数里的 block 声明
19 | IDECodeSnippetTitle
20 | block as OC method parameter
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_deprecated.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | deprecated
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | DEPRECATED_MSG_ATTRIBUTE("<#message#>")
13 | IDECodeSnippetIdentifier
14 | B3E536D7-2C10-4F21-9FB8-2173A3D5DD8D
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetSummary
20 |
21 | IDECodeSnippetTitle
22 | deprecated message
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_layoutSubviews.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | layoutSubviews
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)layoutSubviews {
13 | [super layoutSubviews];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 1795B602-AC2C-46C8-900F-7157C26857EC
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | layoutSubviews
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_block_as_argument_in_Function.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | blockParameterInFunction
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#returnType#> (^<#blockName#>)(<#parameterTypes#>)
13 | IDECodeSnippetIdentifier
14 | F0EEA7C4-643E-4347-BE1C-762B578B6929
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetSummary
18 | C函数参数里的 block 声明
19 | IDECodeSnippetTitle
20 | block as C function parameter
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_setFrame.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setFrame
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | <#view#>.frame = CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>)
13 | IDECodeSnippetIdentifier
14 | 55D23AA0-FB1C-46D5-898A-E83791641D1C
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetTitle
20 | set Frame
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_setTitleColorForButton.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setTitleColorForButton
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [<#button#> setTitleColor:<#color#> forState:UIControlStateNormal];
13 | IDECodeSnippetIdentifier
14 | FFCD7C84-551D-467B-938D-BB0B2E9A31AF
15 | IDECodeSnippetLanguage
16 | Xcode.SourceCodeLanguage.Objective-C
17 | IDECodeSnippetPlatformFamily
18 | iphoneos
19 | IDECodeSnippetTitle
20 | set UIButton Title Color
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/rac_kvo.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | rac_kvo
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [RACObserve(<#object#>, <#property#>) subscribeNext:^(id x) {
13 | <##>
14 | }];
15 | IDECodeSnippetIdentifier
16 | BEBAED0D-8043-4BFA-9ED6-75524C49E23B
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | RAC KVO Observe
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_function_handleEvent.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv_handleEvent
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)handle<#ControlName#>Event:(id)sender {
13 | <#code#>
14 | }
15 |
16 | IDECodeSnippetIdentifier
17 | 53A49D67-CFF3-4449-AE38-B50E4F44529F
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | 创建UIControl的事件回调
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QMUI_setupToolbarItems.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setupToolbarItems
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)setupToolbarItems {
13 | [super setupToolbarItems];
14 | <#code#>
15 | }
16 | IDECodeSnippetIdentifier
17 | 022DE893-7D28-4272-B3F7-9B493601EFBE
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | setupToolbarItems
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_function_handlePan.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv_pan
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)handlePanGestureRecognizer:(UIPanGestureRecognizer *)gestureRecognizer {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 85908275-A2F1-49FA-8188-739CC7FF1BF5
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | 创建pan手势事件回调
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_function_handleTap.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv_tap
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)handleTapGestureRecognizer:(UITapGestureRecognizer *)gestureRecognizer {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | AC95589F-A1AE-4D8B-A753-4F6D9C5DBBE3
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | 创建tap手势事件回调
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_updateConstraints.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | updateConstraints
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)updateConstraints {
13 | <#code#>
14 | [super updateConstraints];
15 | }
16 | IDECodeSnippetIdentifier
17 | 6D8F1F97-6FDD-44F6-890D-BD590F3C5F8D
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | updateConstraints
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QMUI_didInitializedWithStyle_cell.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didInitializeWithStyle_cell
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)didInitializeWithStyle:(UITableViewCellStyle)style {
13 | [super didInitializeWithStyle:style];
14 | <##>
15 | }
16 | IDECodeSnippetIdentifier
17 | 8D9C07CC-59C0-4411-A4D3-AB5758DC0901
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | didInitializeWithStyle - QMUITableViewCell
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_function_return_block.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnblock
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (<#returnType#> (^)(<#parameterTypes#>))<#method name#> {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 2967221D-E2CF-4AB4-9F96-FABDDC747F4F
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | 创建一个返回值为block类型的方法
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QMUI_didInitializedWithStyle.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didInitializeWithStyle_tableView
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)didInitializeWithStyle:(UITableViewStyle)style {
13 | [super didInitializeWithStyle:style];
14 | <##>
15 | }
16 | IDECodeSnippetIdentifier
17 | B35A0A1F-EA35-4D3A-A579-5FA0E7DF2AA3
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetTitle
21 | didInitializeWithStyle - QMUICommonTableViewController
22 | IDECodeSnippetUserSnippet
23 |
24 | IDECodeSnippetVersion
25 | 2
26 |
27 |
28 |
--------------------------------------------------------------------------------
/QM_ifOSavailable.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | osif
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | if (@available(iOS <#15.0#>, *)) {
13 | <#statements#>
14 | }
15 |
16 | IDECodeSnippetIdentifier
17 | EABDAB9C-966F-4442-B386-DFBAC52FF6D9
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetSummary
23 |
24 | IDECodeSnippetTitle
25 | @available iOS
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QM_timeConsuming.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | timeConsuming
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | CFTimeInterval startTime = CACurrentMediaTime();
13 | <#code here#>
14 | CFTimeInterval endTime = CACurrentMediaTime();
15 | CFTimeInterval consumingTime = endTime - startTime;
16 | NSLog(@"耗时:%@", @(consumingTime));
17 | IDECodeSnippetIdentifier
18 | F03D957F-693E-464B-B5EE-579E045B81C1
19 | IDECodeSnippetLanguage
20 | Xcode.SourceCodeLanguage.Objective-C
21 | IDECodeSnippetTitle
22 | 耗时计算
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_updateViewConstraints.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | updateViewConstraints
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)updateViewConstraints {
13 | <#code#>
14 | [super updateViewConstraints];
15 | }
16 | IDECodeSnippetIdentifier
17 | 22751980-797F-4ED0-8729-EB822E3C23A4
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetTitle
23 | updateViewConstraints
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_dispatch_global.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | dispatch_async_global
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
13 | <##>
14 | });
15 | IDECodeSnippetIdentifier
16 | 6488796C-06A8-475A-9488-DD899B3EAC1A
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | dispatch async global queue
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_function_handleLongPress.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | fnv_longPress
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)handleLongPressGestureRecognizer:(UILongPressGestureRecognizer *)gestureRecognizer {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 880C4894-BB6F-4C9C-8758-6185CE801894
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | 创建longPress手势事件回调
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_property_copy_readonly.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | pcr
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassInterfaceMethods
10 | All
11 | ClassInterfaceVariables
12 |
13 | IDECodeSnippetContents
14 | @property(nonatomic, copy, readonly) <#type#> *<#name#>;
15 | IDECodeSnippetIdentifier
16 | BE7A7A16-BA79-45AF-A62B-869A12C1E257
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetSummary
20 |
21 | IDECodeSnippetTitle
22 | Property For Copy And Readonly
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_initWithNib.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | initWithNib
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
13 | if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
14 | <##>
15 | }
16 | return self;
17 | }
18 | IDECodeSnippetIdentifier
19 | 97299DFC-3270-4449-89FC-30446EB10CC4
20 | IDECodeSnippetLanguage
21 | Xcode.SourceCodeLanguage.Objective-C
22 | IDECodeSnippetTitle
23 | initWithNib
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QM_numberOfSectionsInTableView.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | numberOfSectionsInTableView
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
13 | return <#number#>;
14 | }
15 | IDECodeSnippetIdentifier
16 | D7C98832-B74F-4274-881D-50D6EA4981B2
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | numberOfSectionsInTableView:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_didSelectRowAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didSelectRowAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 5090E861-C500-42E1-B0FE-2F30D4A4B752
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | didSelectRowAtIndexPath:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_numberOfRowsInSection.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | numberOfRowsInSection
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
13 | return <#numberOfRows#>
14 | }
15 | IDECodeSnippetIdentifier
16 | A57800E7-5EA2-44BC-A868-39E0FB029E6C
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | numberOfRowsInSection:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QMUI_extendVoidReturnNonArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_void_non_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfVoidMethodWithoutArguments([<#targetClass#> class], @selector(<#targetSelector#>), ^(<#targetClass#> *selfObject) {
13 | <#custom extend#>
14 | });
15 | IDECodeSnippetIdentifier
16 | 61D9E89B-0189-4153-8FFA-7B8C2EE05F9D
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Void Return Non Argument
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_didSelectItemAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didSelectItemAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 0790FF6C-A6AE-496F-B7E9-2C12432156EC
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | didSelectItemAtIndexPath:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_heightForRowAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | heightForRowAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
13 | return <#heightForRow#>;
14 | }
15 | IDECodeSnippetIdentifier
16 | 0240A193-5CFE-4805-9006-82DBFD69741F
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | heightForRowAtIndexPath:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_didDeselectItemAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | didDeselectItemAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath {
13 | <#code#>
14 | }
15 | IDECodeSnippetIdentifier
16 | 8856E30C-BC54-42E2-97DA-882B595548F6
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | didDeselectItemAtIndexPath:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | (The MIT License)
2 |
3 | Copyright (c) 2016 QMUI Team
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/QM_numberOfItemsInSection.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | numberOfItemsInSection
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
13 | return <#numberOfItemsInSection#>;
14 | }
15 | IDECodeSnippetIdentifier
16 | 101B0213-960B-478E-9D50-99EA39F3CC9F
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | numberOfItemsInSection:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_numberOfSectionsInCollectionView.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | numberOfSectionsInCollectionView
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
13 | return <#numberOfSections#>;
14 | }
15 | IDECodeSnippetIdentifier
16 | BCBDF4CD-8EAD-48F7-A96A-8A48C188D1C2
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | numberOfSectionsInCollectionView:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QM_tableView_initWithStyle.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | initWithStyle
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (instancetype)initWithStyle:(UITableViewStyle)style {
13 | if (self = [super initWithStyle:style]) {
14 | <#code#>
15 | }
16 | return self;
17 | }
18 | IDECodeSnippetIdentifier
19 | E61F2B72-1DDE-42D9-A0CB-B713695C598E
20 | IDECodeSnippetLanguage
21 | Xcode.SourceCodeLanguage.Objective-C
22 | IDECodeSnippetPlatformFamily
23 | iphoneos
24 | IDECodeSnippetTitle
25 | UITableView -initWithStyle:
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QMUI_setupNavigationItems.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | setupNavigationItems
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (void)setupNavigationItems {
13 | [super setupNavigationItems];
14 | self.title = @"<##>";
15 | }
16 | IDECodeSnippetIdentifier
17 | DC0DDC5E-D32D-49BF-A61E-06403ADBB977
18 | IDECodeSnippetLanguage
19 | Xcode.SourceCodeLanguage.Objective-C
20 | IDECodeSnippetPlatformFamily
21 | iphoneos
22 | IDECodeSnippetSummary
23 | 设置 navigationItem
24 | IDECodeSnippetTitle
25 | setupNavigationItems
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QM_tableView_insetNever.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | tableView_scrollNever
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | if (@available(iOS 11, *)) {
13 | self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
14 | } else {
15 | self.automaticallyAdjustsScrollViewInsets = NO;
16 | }
17 | IDECodeSnippetIdentifier
18 | 4D8558EC-1D8E-4B11-9C69-50614951CA1F
19 | IDECodeSnippetLanguage
20 | Xcode.SourceCodeLanguage.Objective-C
21 | IDECodeSnippetSummary
22 |
23 | IDECodeSnippetTitle
24 | UITableView Scroll Never
25 | IDECodeSnippetUserSnippet
26 |
27 | IDECodeSnippetVersion
28 | 2
29 |
30 |
31 |
--------------------------------------------------------------------------------
/QMUI_exchangeImplementation.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | exchangeImplementation_QMUI
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | + (void)load {
13 | static dispatch_once_t onceToken;
14 | dispatch_once(&onceToken, ^{
15 | ExchangeImplementations(<#class#>, @selector(<#origin selecotr#>), @selector(<#new selector#>));
16 | });
17 | }
18 | IDECodeSnippetIdentifier
19 | 444CF4FA-4BD2-43F5-8278-7234EA8E5FBF
20 | IDECodeSnippetLanguage
21 | Xcode.SourceCodeLanguage.Objective-C
22 | IDECodeSnippetTitle
23 | exchange method implementations in +load with QMUI
24 | IDECodeSnippetUserSnippet
25 |
26 | IDECodeSnippetVersion
27 | 2
28 |
29 |
30 |
--------------------------------------------------------------------------------
/QMUI_extendVoidReturnSingleArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_void_single_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfVoidMethodWithSingleArgument([<#targetClass#> class], @selector(<#targetSelector#>), <#argumentType#>, ^(<#targetClass#> *selfObject, <#argumentType#> firstArgv) {
13 | <#custom extend#>
14 | });
15 | IDECodeSnippetIdentifier
16 | 646E8309-8AE3-4E5B-BBBD-744958FBA30E
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Void Return Single Argument
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_sizeThatFits.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | sizeThatFits
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (CGSize)sizeThatFits:(CGSize)size {
13 | CGSize resultSize = size;
14 |
15 | CGFloat resultWidth = <#0#>;
16 | resultSize.width = MIN(resultWidth, size.width);
17 |
18 | CGFloat resultHeight = <#0#>;
19 | resultSize.height = resultHeight;
20 |
21 | return resultSize;
22 | }
23 | IDECodeSnippetIdentifier
24 | 8BBED35F-461D-418F-A2E1-3CCF058B4814
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetTitle
28 | sizeThatFits:
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QM_sizeForItemAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | sizeForItemAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
13 | return CGSizeMake(<#width#>, <#height#>);
14 | }
15 | IDECodeSnippetIdentifier
16 | AD640EEB-3A51-46EF-8B2E-47B72779C9C3
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetTitle
22 | sizeForItemAtIndexPath:
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QMUI_extendNonVoidReturnNonArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_return_non_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfNonVoidMethodWithoutArguments([<#targetClass#> class], @selector(<#targetSelector#>), <#returnType#>, ^<#returnType#>(<#targetClass#> *selfObject, <#returnType#> originReturnValue) {
13 | return <#custom extend#>
14 | });
15 | IDECodeSnippetIdentifier
16 | 00BCE9A8-0268-4700-BA64-83A000EF3825
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Non Void Return Non Argument
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_removeFromParentViewController.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | removeFromParentViewController
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [<#childViewController#> willMoveToParentViewController:nil];
13 | [<#childViewController#>.view removeFromSuperview];
14 | [<#childViewController#> removeFromParentViewController];
15 | IDECodeSnippetIdentifier
16 | 04996CD3-4E1F-49A9-A3CC-C3E42D5673BB
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetSummary
20 | UIViewController removeFromParentViewController
21 | IDECodeSnippetTitle
22 | removeFromParentViewController
23 | IDECodeSnippetUserSnippet
24 |
25 | IDECodeSnippetVersion
26 | 2
27 |
28 |
29 |
--------------------------------------------------------------------------------
/QMUI_extendVoidReturnTwoArgvs.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_void_two_argvs
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfVoidMethodWithTwoArguments([<#targetClass#> class], @selector(<#targetSelector#>), <#argumentType1#>, <#argumentType2#>, ^(<#targetClass#> *selfObject, <#argumentType1#> firstArgv, <#argumentType2#> secondArgv) {
13 | <#custom extend#>
14 | });
15 | IDECodeSnippetIdentifier
16 | 61426012-95A0-401A-A3AC-89F229A9B831
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Void Return Two Arguments
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_sharedInstance.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | sharedInstance
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | + (instancetype)sharedInstance {
13 | static dispatch_once_t onceToken;
14 | static <#class name#> *instance = nil;
15 | dispatch_once(&onceToken, ^{
16 | instance = [[super allocWithZone:NULL] init];
17 | });
18 | return instance;
19 | }
20 |
21 | + (id)allocWithZone:(struct _NSZone *)zone {
22 | return [self sharedInstance];
23 | }
24 | IDECodeSnippetIdentifier
25 | 26D03BCD-735E-4CFD-8E48-3DBA65BC70A1
26 | IDECodeSnippetLanguage
27 | Xcode.SourceCodeLanguage.Objective-C
28 | IDECodeSnippetTitle
29 | sharedInstance
30 | IDECodeSnippetUserSnippet
31 |
32 | IDECodeSnippetVersion
33 | 2
34 |
35 |
36 |
--------------------------------------------------------------------------------
/QM_addChildViewController.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | addChildViewController
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [self addChildViewController:<#childViewController#>];
13 | [self.view addSubview:<#childViewController#>.view];
14 | [<#childViewController#> didMoveToParentViewController:self];
15 | IDECodeSnippetIdentifier
16 | 51608015-7179-49F1-8CF7-4810CEF069E0
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetPlatformFamily
20 | iphoneos
21 | IDECodeSnippetSummary
22 | UIViewController addChildViewController:
23 | IDECodeSnippetTitle
24 | addChildViewController
25 | IDECodeSnippetUserSnippet
26 |
27 | IDECodeSnippetVersion
28 | 2
29 |
30 |
31 |
--------------------------------------------------------------------------------
/QMUI_extendNonVoidReturnSingleArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_return_single_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfNonVoidMethodWithSingleArgument([<#targetClass#> class], @selector(<#targetSelector#>), <#argumentType#>, <#returnType#>, ^<#returnType#>(<#targetClass#> *selfObject, <#argumentType#> firstArgv, <#returnType#> originReturnValue) {
13 | return <#custom extend#>;
14 | });
15 | IDECodeSnippetIdentifier
16 | D96EBFBE-EA27-4210-B9D4-8172B875559A
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Non Void Return Single Argument
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_tableViewCell_initWithStyle.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | initWithStyleForCell
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
13 | if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
14 | <#code#>
15 | }
16 | return self;
17 | }
18 | IDECodeSnippetIdentifier
19 | BF5695D8-5243-4DC2-8153-82B8858295AC
20 | IDECodeSnippetLanguage
21 | Xcode.SourceCodeLanguage.Objective-C
22 | IDECodeSnippetPlatformFamily
23 | iphoneos
24 | IDECodeSnippetSummary
25 | UITableViewCell的默认初始化方法
26 | IDECodeSnippetTitle
27 | initWithStyle:reuseIdentifier:
28 | IDECodeSnippetUserSnippet
29 |
30 | IDECodeSnippetVersion
31 | 2
32 |
33 |
34 |
--------------------------------------------------------------------------------
/QM_cellForItemAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | cellForItemAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
13 |
14 | UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:<#reuseIdentifier#> forIndexPath:indexPath];
15 |
16 | <#code#>
17 |
18 | return cell;
19 | }
20 | IDECodeSnippetIdentifier
21 | 7AAC0412-41B1-4200-815D-CD1ED79A05E0
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetPlatformFamily
25 | iphoneos
26 | IDECodeSnippetTitle
27 | cellForItemAtIndexPath:
28 | IDECodeSnippetUserSnippet
29 |
30 | IDECodeSnippetVersion
31 | 2
32 |
33 |
34 |
--------------------------------------------------------------------------------
/QM_property_swizzle_weak.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | propertySwizzleWeak
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | static char kAssociatedObjectKey_<#property name#>;
13 | - (void)set<#property name#> {
14 | objc_setAssociatedObject(self, &kAssociatedObjectKey_<#property name#>, <#argument name#>, OBJC_ASSOCIATION_ASSIGN);
15 | }
16 |
17 | - <#property getter#> {
18 | return (<#Property type#> *)objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>);
19 | }
20 | IDECodeSnippetIdentifier
21 | B696ADA0-4026-4954-A454-8B7B2FCE40BF
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetTitle
25 | 用swizzle方式创建weak类型的property的getter/setter
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QM_property_swizzle_copy.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | propertySwizzleCopy
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | static char kAssociatedObjectKey_<#property name#>;
13 | - (void)set<#property name#> {
14 | objc_setAssociatedObject(self, &kAssociatedObjectKey_<#property name#>, <#argument name#>, OBJC_ASSOCIATION_COPY_NONATOMIC);
15 | }
16 |
17 | - <#property getter#> {
18 | return (<#Property type#> *)objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>);
19 | }
20 | IDECodeSnippetIdentifier
21 | 499A01BF-2245-446A-A7D5-D940FE6833CD
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetTitle
25 | 用swizzle方式创建copy类型的property的getter/setter
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QM_property_swizzle_strong.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | propertySwizzleStrong
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | static char kAssociatedObjectKey_<#property name#>;
13 | - (void)set<#property name#> {
14 | objc_setAssociatedObject(self, &kAssociatedObjectKey_<#property name#>, <#argument name#>, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
15 | }
16 |
17 | - <#property getter#> {
18 | return (<#Property type#> *)objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>);
19 | }
20 | IDECodeSnippetIdentifier
21 | 11202851-7F95-4B80-9E01-ED9D300457E4
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetTitle
25 | 用swizzle方式创建strong类型的property的getter/setter
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/QMUI_extendNonVoidReturnTwoArgvs.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | extend_return_two_argvs
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | ExtendImplementationOfNonVoidMethodWithTwoArguments([<#targetClass#> class], @selector(<#targetSelector#>), <#argumentType1#>, <#argumentType2#>, <#returnType#>, ^<#returnType#>(<#targetClass#> *selfObject, <#argumentType1#> firstArgv, <#argumentType2#> secondArgv, <#returnType#> originReturnValue) {
13 | return <#custom extend#>;
14 | });
15 | IDECodeSnippetIdentifier
16 | DFCA59C1-07E0-4857-AE4D-3C9045016712
17 | IDECodeSnippetLanguage
18 | Xcode.SourceCodeLanguage.Objective-C
19 | IDECodeSnippetTitle
20 | Extend Implementation Of Non Void Return Two Arguments
21 | IDECodeSnippetUserSnippet
22 |
23 | IDECodeSnippetVersion
24 | 2
25 |
26 |
27 |
--------------------------------------------------------------------------------
/QM_property_swizzle_assign.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | propertySwizzleAssign
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | static char kAssociatedObjectKey_<#property name#>;
13 | - (void)set<#property name#> {
14 | objc_setAssociatedObject(self, &kAssociatedObjectKey_<#property name#>, @(<#argument name#>), OBJC_ASSOCIATION_RETAIN_NONATOMIC);
15 | }
16 |
17 | - <#property getter#> {
18 | return [((NSNumber *)objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>)) <#NSNumber value type for property#>];
19 | }
20 | IDECodeSnippetIdentifier
21 | 83D77BF6-443B-4513-A2C3-DAE9263D6995
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetTitle
25 | 用swizzle方式创建assign类型的property的getter/setter
26 | IDECodeSnippetUserSnippet
27 |
28 | IDECodeSnippetVersion
29 | 2
30 |
31 |
32 |
--------------------------------------------------------------------------------
/rac_combine.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | rac_combine
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | [[[[RACSignal combineLatest:@[RACObserve(<#object#>, <#property1#>),
13 | RACObserve(<#object#>, <#property2#>)]] map:^id _Nullable(RACTuple *tuple) {
14 | return @(<#BOOL#>);
15 | }] distinctUntilChanged] subscribeNext:^(NSNumber *x) {
16 | @strongify(self);
17 | if (x.boolValue) {
18 | <#do something#>
19 | }
20 | }];
21 | IDECodeSnippetIdentifier
22 | 901FCC55-9658-48F2-AFFD-DAD0957FDA3C
23 | IDECodeSnippetLanguage
24 | Xcode.SourceCodeLanguage.Objective-C
25 | IDECodeSnippetPlatformFamily
26 | iphoneos
27 | IDECodeSnippetTitle
28 | RAC Combine
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QM_cellForRowAtIndexPath.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | cellForRowAtIndexPath
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
13 | static NSString *identifier = @"cell";
14 | <#UITableViewCell#> *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
15 | if (!cell) {
16 | cell = [[<#UITableViewCell#> alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
17 | }
18 | return cell;
19 | }
20 | IDECodeSnippetIdentifier
21 | 021DC28A-CFB6-45A2-B055-D3D552E5301D
22 | IDECodeSnippetLanguage
23 | Xcode.SourceCodeLanguage.Objective-C
24 | IDECodeSnippetPlatformFamily
25 | iphoneos
26 | IDECodeSnippetTitle
27 | cellForRowAtIndexPath:
28 | IDECodeSnippetUserSnippet
29 |
30 | IDECodeSnippetVersion
31 | 2
32 |
33 |
34 |
--------------------------------------------------------------------------------
/QMUI_overrideNonVoidReturnNonArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_return_non_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^<#returnType#>(<#targetClass#> *selfObject) {
14 | // call super
15 | <#returnType#> (*originSelectorIMP)(id, SEL);
16 | originSelectorIMP = (<#returnType#> (*)(id, SEL))originalIMPProvider();
17 | <#returnType#> result = originSelectorIMP(selfObject, originCMD);
18 |
19 | return <#custom override#>
20 | };
21 | });
22 | IDECodeSnippetIdentifier
23 | 728398A0-1FA7-4753-9456-7F071139D57D
24 | IDECodeSnippetLanguage
25 | Xcode.SourceCodeLanguage.Objective-C
26 | IDECodeSnippetTitle
27 | Override Implementation Of Non Void Return Non Argument
28 | IDECodeSnippetUserSnippet
29 |
30 | IDECodeSnippetVersion
31 | 2
32 |
33 |
34 |
--------------------------------------------------------------------------------
/QMUI_overrideVoidReturnNonArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_void_non_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^(<#targetClass#> *selfObject) {
14 |
15 | // call super
16 | void (*originSelectorIMP)(id, SEL);
17 | originSelectorIMP = (void (*)(id, SEL))originalIMPProvider();
18 | originSelectorIMP(selfObject, originCMD);
19 |
20 | <#custom override#>
21 | };
22 | });
23 | IDECodeSnippetIdentifier
24 | 3E175A3D-A137-4744-9754-2A28B66E20A1
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetPlatformFamily
28 | iphoneos
29 | IDECodeSnippetTitle
30 | Override Implementation Of Void Return Non Argument
31 | IDECodeSnippetUserSnippet
32 |
33 | IDECodeSnippetVersion
34 | 2
35 |
36 |
37 |
--------------------------------------------------------------------------------
/QMUI_overrideVoidReturnSingleArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_void_single_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^(<#targetClass#> *selfObject, <#argumentType#> firstArgv) {
14 |
15 | // call super
16 | void (*originSelectorIMP)(id, SEL, <#argumentType#>);
17 | originSelectorIMP = (void (*)(id, SEL, <#argumentType#>))originalIMPProvider();
18 | originSelectorIMP(selfObject, originCMD, firstArgv);
19 |
20 | <#custom override#>
21 | };
22 | });
23 | IDECodeSnippetIdentifier
24 | D1B458BC-5F28-45E9-A26A-63BD851DD21C
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetTitle
28 | Override Implementation Of Void Return Single Argument
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QMUI_exchangeMultipleImplementations.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | exchangeMultipleImplementations_QMUI
7 | IDECodeSnippetCompletionScopes
8 |
9 | All
10 |
11 | IDECodeSnippetContents
12 | + (void)load {
13 | static dispatch_once_t onceToken;
14 | dispatch_once(&onceToken, ^{
15 | SEL selectors[] = {
16 | @selector(<#selector name1#>),
17 | @selector(<#selector name2#>)
18 | };
19 | for (NSUInteger index = 0; index < sizeof(selectors) / sizeof(SEL); index++) {
20 | SEL originalSelector = selectors[index];
21 | SEL swizzledSelector = NSSelectorFromString([@"<#new method prefix#>_" stringByAppendingString:NSStringFromSelector(originalSelector)]);
22 | ExchangeImplementations([self class], originalSelector, swizzledSelector);
23 | }
24 | });
25 | }
26 | IDECodeSnippetIdentifier
27 | A5AEA3D2-5AC9-4ACE-B1C4-075983619EFF
28 | IDECodeSnippetLanguage
29 | Xcode.SourceCodeLanguage.Objective-C
30 | IDECodeSnippetTitle
31 | exchange multiple method implementations in +load with QMUI
32 | IDECodeSnippetUserSnippet
33 |
34 | IDECodeSnippetVersion
35 | 2
36 |
37 |
38 |
--------------------------------------------------------------------------------
/QM_collectionViewDelegate.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | collectionViewDelegate
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
13 | return <#numberOfSections#>;
14 | }
15 |
16 | - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
17 | return <#numberOfItemsInSection#>;
18 | }
19 |
20 | - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
21 |
22 | UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:<#reuseIdentifier#> forIndexPath:indexPath];
23 |
24 | <#code#>
25 |
26 | return cell;
27 | }
28 | IDECodeSnippetIdentifier
29 | 880149F5-CC79-4CBB-B879-33C44C90C226
30 | IDECodeSnippetLanguage
31 | Xcode.SourceCodeLanguage.Objective-C
32 | IDECodeSnippetPlatformFamily
33 | iphoneos
34 | IDECodeSnippetTitle
35 | UICollectionViewDelegate
36 | IDECodeSnippetUserSnippet
37 |
38 | IDECodeSnippetVersion
39 | 2
40 |
41 |
42 |
--------------------------------------------------------------------------------
/QMUI_property_swizzle_weak.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | propertySwizzleWeak_QMUI
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | static char kAssociatedObjectKey_<#property name#>;
13 | - (void)set<#property name#> {
14 | QMUIWeakObjectContainer *weakContainer = objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>);
15 | if (!weakContainer) {
16 | weakContainer = [QMUIWeakObjectContainer new];
17 | }
18 | weakContainer.object = <#argument name#>;
19 | objc_setAssociatedObject(self, &kAssociatedObjectKey_<#property name#>, weakContainer, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
20 | }
21 |
22 | - <#property getter#> {
23 | return (<#property type#> *)((QMUIWeakObjectContainer *)objc_getAssociatedObject(self, &kAssociatedObjectKey_<#property name#>)).object;
24 | }
25 | IDECodeSnippetIdentifier
26 | 5BD3118C-1D72-471C-BED5-AF14D9EE54FF
27 | IDECodeSnippetLanguage
28 | Xcode.SourceCodeLanguage.Objective-C
29 | IDECodeSnippetTitle
30 | QMUI - 用swizzle方式创建weak类型的property的getter/setter
31 | IDECodeSnippetUserSnippet
32 |
33 | IDECodeSnippetVersion
34 | 2
35 |
36 |
37 |
--------------------------------------------------------------------------------
/QMUI_overrideNonVoidReturnSingleArgv.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_return_single_argv
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^<#returnType#>(<#targetClass#> *selfObject, <#argumentType#> firstArgv) {
14 |
15 | // call super
16 | <#returnType#> (*originSelectorIMP)(id, SEL, <#argumentType#>);
17 | originSelectorIMP = (<#returnType#> (*)(id, SEL, <#argumentType#>))originalIMPProvider();
18 | <#returnType#> result = originSelectorIMP(selfObject, originCMD, firstArgv);
19 |
20 | return <#custom override#>
21 | };
22 | });
23 | IDECodeSnippetIdentifier
24 | 56A38ADE-F1BD-4B31-81B5-EE230595C776
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetTitle
28 | Override Implementation Of Non Void Return Single Argument
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QMUI_overrideVoidReturnTwoArgvs.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_void_two_argvs
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^(<#targetClass#> *selfObject, <#argumentType1#> firstArgv, <#argumentType2#> secondArgv) {
14 |
15 | // call super
16 | void (*originSelectorIMP)(id, SEL, <#argumentType1#>, <#argumentType2#>);
17 | originSelectorIMP = (void (*)(id, SEL, <#argumentType1#>, <#argumentType2#>))originalIMPProvider();
18 | originSelectorIMP(selfObject, originCMD, firstArgv, secondArgv);
19 |
20 | <#custom override#>
21 | };
22 | });
23 | IDECodeSnippetIdentifier
24 | BD790850-4DC6-4F53-AAB1-FF21AAE2BE74
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetTitle
28 | Override Implementation Of Void Return Two Arguments
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QMUI_overrideNonVoidReturnTwoArgvs.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | override_return_two_argvs
7 | IDECodeSnippetCompletionScopes
8 |
9 | CodeBlock
10 |
11 | IDECodeSnippetContents
12 | OverrideImplementation([<#targetClass#> class], @selector(<#targetSelector#>), ^id(__unsafe_unretained Class originClass, SEL originCMD, IMP (^originalIMPProvider)(void)) {
13 | return ^<#returnType#>(<#targetClass#> *selfObject, <#argumentType1#> firstArgv, <#argumentType2#> secondArgv) {
14 |
15 | // call super
16 | <#returnType#> (*originSelectorIMP)(id, SEL, <#argumentType1#>, <#argumentType2#>);
17 | originSelectorIMP = (<#returnType#> (*)(id, SEL, <#argumentType1#>, <#argumentType2#>))originalIMPProvider();
18 | <#returnType#> result = originSelectorIMP(selfObject, originCMD, firstArgv, secondArgv);
19 |
20 | return <#custom override#>
21 | };
22 | });
23 | IDECodeSnippetIdentifier
24 | 03686901-F803-4AB2-82AB-BD507D7403DB
25 | IDECodeSnippetLanguage
26 | Xcode.SourceCodeLanguage.Objective-C
27 | IDECodeSnippetTitle
28 | Override Implementation Of Non Void Return Two Arguments
29 | IDECodeSnippetUserSnippet
30 |
31 | IDECodeSnippetVersion
32 | 2
33 |
34 |
35 |
--------------------------------------------------------------------------------
/QM_tableViewDelegate.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | tableViewDelegate
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
13 | return <#number#>;
14 | }
15 |
16 | - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
17 | return <#numberOfRows#>;
18 | }
19 |
20 | - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
21 | return <#heightForRow#>;
22 | }
23 |
24 | - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
25 | static NSString *identifier = @"cell";
26 | <#UITableViewCell#> *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
27 | if (!cell) {
28 | cell = [[<#UITableViewCell#> alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
29 | }
30 | return cell;
31 | }
32 |
33 | - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
34 | <#code#>
35 | }
36 | IDECodeSnippetIdentifier
37 | 10AF1F50-BF9C-4579-B6D7-45F5DF40D63A
38 | IDECodeSnippetLanguage
39 | Xcode.SourceCodeLanguage.Objective-C
40 | IDECodeSnippetPlatformFamily
41 | iphoneos
42 | IDECodeSnippetSummary
43 | UITableViewDelegate初始化代码
44 | IDECodeSnippetTitle
45 | UITableViewDelegate
46 | IDECodeSnippetUserSnippet
47 |
48 | IDECodeSnippetVersion
49 | 2
50 |
51 |
52 |
--------------------------------------------------------------------------------
/QM_exchangeImplementation.codesnippet:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDECodeSnippetCompletionPrefix
6 | exchangeImplementation
7 | IDECodeSnippetCompletionScopes
8 |
9 | ClassImplementation
10 |
11 | IDECodeSnippetContents
12 | + (void)load {
13 | static dispatch_once_t onceToken;
14 | dispatch_once(&onceToken, ^{
15 | Class class = [self class];
16 | SEL originSelector = @selector(<#origin selector#>);
17 | SEL newSelector = @selector(<#new selector#>);
18 | Method oriMethod = class_getInstanceMethod(class, originSelector);
19 | Method newMethod = class_getInstanceMethod(class, newSelector);
20 | if (newMethod) {
21 | BOOL isAddedMethod = class_addMethod(class, originSelector, method_getImplementation(newMethod), method_getTypeEncoding(newMethod));
22 | if (isAddedMethod) {
23 | IMP oriMethodIMP = method_getImplementation(oriMethod) ?: imp_implementationWithBlock(^(id selfObject) {});
24 | const char *oriMethodTypeEncoding = method_getTypeEncoding(oriMethod) ?: "v@:";
25 | class_replaceMethod(class, newSelector, oriMethodIMP, oriMethodTypeEncoding);
26 | } else {
27 | method_exchangeImplementations(oriMethod, newMethod);
28 | }
29 | }
30 | });
31 | }
32 | IDECodeSnippetIdentifier
33 | 0219854F-3A75-483E-9F4A-EFA34646365E
34 | IDECodeSnippetLanguage
35 | Xcode.SourceCodeLanguage.Objective-C
36 | IDECodeSnippetSummary
37 | 用来写 exchange implementations 的 load 方法模板
38 | IDECodeSnippetTitle
39 | exchange method implementations in +load
40 | IDECodeSnippetUserSnippet
41 |
42 | IDECodeSnippetVersion
43 | 2
44 |
45 |
46 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # qmui-ios-codesnippets
2 | *qmui-ios-codesnippets* 是一个 QMUI 团队日常工作中整理出来的用于 Xcode 的 iOS 通用代码片段集,其中也包含若干专用于 QMUI for iOS 框架的代码片段。
3 |
4 | 整理这个代码片段集的初衷有以下几点:
5 |
6 | 1. 我们发现由于 Xcode 本身的功能不足,导致我们经常在重写一些系统父类方法时容易忘了调用 `super`,从而出现一些很难排查的诡异bug。
7 | 2. Xcode 虽然有模糊匹配的代码提醒,但代码提醒只能帮你写方法名,而code snippets 还可以帮你填充一些默认的方法实现,或者直接移动光标到方法体内,省去几次光标操作。
8 | 3. 一些常用的写法本身语法可能比较复杂,难以记忆,例如实现一个类的单例、使用 `swizzle` 来重写系统控件的方法、block 在不同地方的语法不同等。
9 | 4. 一些代码本身看似简单,但由于特别常用,所以使用 code snippets 可以大大节省时间。
10 |
11 |
12 | ## 使用方式
13 | Xcode 的 Code Snippets 文件存放于 `~/Library/Developer/Xcode/UserData/CodeSnippets` 目录,只要直接把 `*.codesnippets` 文件放到这个目录下(若没有则自己创建),重启 Xcode 即可生效。
14 |
15 | 为了方便更新,建议直接将 QMUI iOS CodeSnippets clone 到这个目录内(注意,不是在 CodeSnippets 里创建一个 QMUI 的目录,这里不支持子目录):
16 | ```bash
17 | cd ~/Library/Developer/Xcode/UserData/CodeSnippets
18 | ```
19 | CodeSnippets 目录为空:
20 | ```bash
21 | git clone https://github.com/QMUI/QMUI_iOS_CodeSnippets.git ./
22 | ```
23 | CodeSnippets 目录不为空:
24 | ```bash
25 | git init .
26 | git remote add origin https://github.com/QMUI/QMUI_iOS_CodeSnippets.git
27 | git pull origin master
28 | ```
29 |
30 | 其中以 `QM_` 前缀开头的文件是通用的 Code Snippets,以 `QMUI_` 前缀开头的文件是专用于 `QMUI for iOS` 框架的代码片段。在下方的快捷键汇总里,QMUI 的代码片段将会以QMUI的形式标记出来。
31 |
32 | 注意,Xcode 对每一段 Code Snippet 都有规定适用的语言(Objective-C、Objective-C++、Swift、...)和作用域(如 Class 的 Interface 定义内、Class 的 Implementation 内、方法体内、...),所以测试某段 Code Snippet 不生效时请注意你当前是否处于不匹配的位置。
33 |
34 | ## 快捷键汇总
35 | *NSObject*
36 | - `pa` - 定义一个 `assign` 的 property
37 | - `par` - 定义一个 `assign, readonly` 的 property
38 | - `pc` - 定义一个 `copy` 的 property
39 | - `pcr` - 定义一个 `copy, readonly` 的 property
40 | - `ps` - 定义一个 `strong` 的property
41 | - `psr` - 定义一个 `strong, readonly` 的property
42 | - `pw` - 定义一个 `weak` 的property
43 | - `pwr` - 定义一个 `weak, readonly` 的property
44 | - `load_once` - 创建一个带 `dispatch_once` 的 `+load` 方法
45 | - `propertySwizzleAssign` - 用 `swizzle` 的方式定义一个 `assign` 的property
46 | - `propertySwizzleCopy` - 用 `swizzle` 的方式定义一个 `copy` 的property
47 | - `propertySwizzleStrong` - 用 `swizzle` 的方式定义一个 `strong` 的property
48 | - `propertySwizzleWeak` - 用 `swizzle` 的方式定义一个 `weak` 的property
49 | - `sharedInstance` - 为当前类创建一个实现单例功能的 `sharedInstance` 方法
50 | - `exchangeImplementation` - 重写当前类的 `load` 方法并在其中用 `swizzle` 替换方法实现
51 | - `exchangeImplementation_QMUI` - 用 QMUI 重写当前类的 `load` 方法并用 `ExchangeImplementations()` 函数替换方法的实现
52 | - `exchangeMultipleImplementations_QMUI` - 用 QMUI 重写当前类的 `load` 方法并用 `ExchangeImplementations()` 函数批量替换多个方法的实现
53 | - `override_void_non_argv` - 用 QMUI 的 `OverrideImplementation()` 重写指定 class 的某个无返回值、无参数的方法实现
54 | - `override_void_single_argv` - 用 QMUI 的 `OverrideImplementation()` 修改指定 class 的某个无返回值、带一个参数的方法实现
55 | - `override_void_two_argvs` - 用 QMUI 的 `OverrideImplementation()` 修改指定 class 的某个无返回值、带两个参数的方法实现
56 | - `override_return_non_argv` - 用 QMUI 的 `OverrideImplementation()` 修改指定 class 的某个带返回值、无参数的方法实现
57 | - `override_return_single_argv` - 用 QMUI 的 `OverrideImplementation()` 修改指定 class 的某个带返回值、带一个参数的方法实现
58 | - `override_return_two_argvs` - 用 QMUI 的 `OverrideImplementation()` 修改指定 class 的某个带返回值、带两个参数的方法实现
59 | - `extend_void_non_argv` - 用 QMUI 的 `ExtendImplementationOfVoidMethodWithoutArguments()` 修改指定 class 的某个无返回值、无参数的方法实现
60 | - `extend_void_single_argv` - 用 QMUI 的 `ExtendImplementationOfVoidMethodWithSingleArgument()` 修改指定 class 的某个无返回值、带一个参数的方法实现
61 | - `extend_void_two_argvs` - 用 QMUI 的 `ExtendImplementationOfVoidMethodWithTwoArguments()` 修改指定 class 的某个无返回值、带两个参数的方法实现
62 | - `extend_return_non_argv` - 用 QMUI 的 `ExtendImplementationOfNonVoidMethodWithoutArguments()` 修改指定 class 的某个带返回值、无参数的方法实现
63 | - `extend_return_single_argv` - 用 QMUI 的 `ExtendImplementationOfNonVoidMethodWithSingleArgument()` 修改指定 class 的某个带返回值、带一个参数的方法实现
64 | - `extend_return_two_argvs` - 用 QMUI 的 `ExtendImplementationOfNonVoidMethodWithTwoArguments()` 修改指定 class 的某个带返回值、带两个参数的方法实现
65 |
66 |
67 | *Block*
68 | - `blockParameterInMethod` - 声明一个用于 OC 方法参数的 block
69 | - `blockParameterInFunction` - 声明一个用于 C 函数参数的 block
70 | - `blockproperty` - 声明一个用于 property 的 block
71 | - `blocktypedef` - 用 `typedef` 定义一个 block
72 | - `blockvar` - 定义一个作为局部变量的 block
73 |
74 |
75 | *Method & Function*
76 | - `fnv` - 定义一个返回值为 `void` 的方法
77 | - `fnv:` - 定义一个返回值为 `void` 且带参数的方法
78 | - `fnblock` - 定义一个返回值类型为 block 的方法
79 | - `fnv_handleEvent` - 定义一个用于 `UIControl` 事件回调的方法
80 | - `fnv_longPress` - 定义一个用于 `UILongPressGestureRecognizer` 的回调方法(你就不用每次都去拼写那个很长的手势名字了)
81 | - `fnv_pan` - 定义一个用于 `UIPanGestureRecognizer` 的回调方法
82 | - `fnv_tap` - 定义一个用于 `UITapGestureRecognizer` 的回调方法
83 |
84 |
85 | *UIView*
86 | - `setFrame` - 为 `UIView` 设置 `frame`
87 | - `setFrame_QMUI` - QMUI 使用像素对齐的 `CGRectFlatMake()` 为 `UIView` 设置 `frame`
88 | - `setFrameX` - QMUI 使用 `CGRectSetX()` 修改 `UIView` 的 `frame.origin.x`
89 | - `setFrameY` - QMUI 使用 `CGRectSetY()` 修改 `UIView` 的 `frame.origin.y`
90 | - `setFrameXY` - QMUI 使用 `CGRectSetXY()` 修改 `UIView` 的 `frame.origin`
91 | - `sizeThatFits` - 为当前 view 创建 `sizeThatFits:` 方法
92 | - `layoutSubviews` - 展开 `layoutSubviews` 方法
93 | - `updateConstraints` - 展开 `updateConstraints` 方法
94 | - `getWidth` - 展开 `CGRectGetWidth()`
95 | - `getHeight` - 展开 `CGRectGetHeight()`
96 | - `getMinX` - 展开 `CGRectGetMinX()`
97 | - `getMinY` - 展开 `CGRectGetMinY()`
98 | - `addtarget` - 调用 `UIControl addTarget:action:forEvents:` 方法
99 | - `setImageForButton` - 为 `UIButton` 设置图片
100 | - `setTitleColorForButton` - 为 `UIButton` 设置文字颜色
101 | - `setTitleForButton` - 为 `UIButton` 设置文字
102 |
103 | *UITableView*
104 | - `initWithStyle` - 展开 `initWithStyle:` 方法
105 | - `initWithStyleForCell` - 展开 `UITableViewCell initWithStyle:reuseIdentifier:` 方法
106 | - `tableViewDelegate` - 展开常用的几个 `UITableViewDelegate` 方法
107 | - `numberOfSectionsInTableView` - 展开 `numberOfSectionsInTableView:`方法
108 | - `numberOfRowsInSection` - 展开 `tableView:numberOfRowsInSection:` 方法
109 | - `cellForRowAtIndexPath` - 展开 `tableView:cellForRowAtIndexPath:` 方法
110 | - `heightForRowAtIndexPath` - 展开 `tableView:heightForRowAtIndexPath:` 方法
111 | - `didSelectRowAtIndexPath` - 展开 `tableView:didSelectRowAtIndexPath:` 方法
112 |
113 |
114 | *UICollectionView*
115 | - `collectionViewDelegate` - 展开常用的几个`UICollectionViewDelegate` 方法
116 | - `numberOfSectionsInCollectionView` - 展开 `numberOfSectionsInCollectionView:`
117 | - `numberOfItemsInSection` - 展开 `collectionView:numberOfItemsInSection:`
118 | - `cellForItemAtIndexPath` - 展开 `collectionView:cellForItemAtIndexPath:`
119 | - `sizeForItemAtIndexPath` - 展开 `collectionView:layout:sizeForItemAtIndexPath:` 方法
120 | - `didSelectItemAtIndexPath` - 展开 `collectionView:didSelectItemAtIndexPath:` 方法
121 | - `didDeselectItemAtIndexPath` - 展开 `collectionView:didDeselectItemAtIndexPath:` 方法
122 |
123 |
124 | *UIViewController*
125 | - `initWithNib` - 展开 `initWithNibName:bundle:` 方法
126 | - `didInitialize` - 展开某些 QMUI 控件提供的 `didInitialize` 方法
127 | - `didInitializeWithStyle` - 展开 QMUICommonTableViewController 的 `didInitializeWithStyle:` 方法
128 | - `loadView` - 展开 `loadView` 方法
129 | - `viewDidLoad` - 展开 `viewDidLoad` 方法
130 | - `viewWillAppear` - 展开 `viewWillAppear:` 方法
131 | - `viewDidAppear` - 展开 `viewDidAppear:` 方法
132 | - `viewWillDisappear` - 展开 `viewWillDisappear:` 方法
133 | - `viewDidDisappear` - 展开 `viewDidDisappear:` 方法
134 | - `viewDidLayoutSubviews` - 展开 `viewDidLayoutSubviews:` 方法
135 | - `updateViewConstraints` - 展开 `updateViewConstraints:` 方法
136 | - `addChildViewController` - 在当前 `UIViewController` 里添加 `childViewController`
137 | - `removeFromParentViewController` - 将 `childViewController` 从当前的 `UIViewController` 里移除
138 | - `initSubviews` - QMUI 展开 `initSubviews` 方法
139 | - `setupNavigationItems` - QMUI 重写 `QMUICommonViewController` 里的 `setupNavigationItems` 方法
140 | - `setupToolbarItems` - QMUI 重写 `QMUICommonViewController` 里的 `setupToolbarItems` 方法
141 |
142 | *UIBarButtonItem*
143 | - `backItem` - 用 QMUI 方法生成一个返回按钮
144 | - `boldTitleItem` - 用 QMUI 方法生成一个文字加粗的导航栏按钮
145 | - `closeItem` - 用 QMUI 方法生成一个导航栏上的关闭图标按钮
146 | - `imageItem` - 用 QMUI 方法生成一个导航栏上的图片按钮
147 | - `titleItem` - 用 QMUI 方法生成一个导航栏上的文字按钮
148 |
149 |
150 | *Other*
151 | - `pragma` - 展开一个用于 Xcode 导航的 `#pragma mark -` 宏
152 | - `log` - 展开 `NSLog(@"xxx")`
153 | - `osif` - 展开一个 @available(iOS xxx, \*) 的 if 判断
154 | - `externRefInH` - 在 `*.h` 文件里声明一个 `extern const` 的指针
155 | - `externRefInM` - 在 `*.m` 文件里为一个 `extern const` 的指针赋值
156 | - `externValueInH` - 在 `*.h` 文件里声明一个 `extern const` 的值变量
157 | - `externValueInM` - 在 `*.m` 文件里为一个 `extern const` 的变量赋值
158 | - `static reference` - 定义一个 `static` 的指针
159 | - `static` - 定义一个 `static` 的值变量
160 | - `__weakSelf` - 定义一个 `weak` 的 `self` 指针
161 | - `__strongSelf` - 将 `weakSelf` 指针改为 `strong` 的 `self` 指针
162 | - `logCallStackSymbols` - 用 `NSLog` 打出当前的方法调用栈信息
163 | - `timeConsuming` - 展开一段用 `CACurrentMediaTime()` 来计算方法耗时的代码
164 |
--------------------------------------------------------------------------------