Skip to content

Commit

Permalink
edit README
Browse files Browse the repository at this point in the history
  • Loading branch information
liufengting committed Aug 17, 2016
1 parent 2144bab commit 02607f5
Show file tree
Hide file tree
Showing 3 changed files with 275 additions and 40 deletions.
50 changes: 25 additions & 25 deletions FTPopMenu/FTPopMenu.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,53 +15,53 @@
*/
+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromView:(UIView *)sender
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;

+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromView:(UIView *)sender
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;

+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromView:(UIView *)sender
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;

+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromView:(UIView *)sender
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
perferedWidth:(CGFloat )perferedWidth
rowHeight:(CGFloat )rowHeight
tintColor:(UIColor *)tintColor
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
preferedWidth:(CGFloat )perferedWidth
rowHeight:(CGFloat )rowHeight
tintColor:(UIColor *)tintColor
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;
/**
* From any UIBarButtonItem
*/
+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;

+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
cancelBlock:(void(^)())cancelBlock;

+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
Expand All @@ -70,11 +70,11 @@


+(void)showFTMenuForViewController:(UIViewController *)sourceViewController
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
fromBarButtonItem:(UIBarButtonItem *)barButtonItem
title:(NSString *)title
menuArray:(NSArray<NSString *> *)menuArray
menuImageNameArray:(NSArray<NSString *> *)menuImageNameArray
perferedWidth:(CGFloat )perferedWidth
preferedWidth:(CGFloat )perferedWidth
rowHeight:(CGFloat )rowHeight
tintColor:(UIColor *)tintColor
doneBlock:(void(^)(NSInteger selectedIndex))doneBlock
Expand Down
109 changes: 99 additions & 10 deletions FTPopMenuDemo/FTPopMenu/ViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ - (void)viewDidLoad {
-(void)makeNavigationBarTransparent
{
[self.navigationController.navigationBar setTintColor:[UIColor blackColor]];

[self.navigationController.navigationBar setTranslucent:YES];
[self.navigationController.navigationBar setShadowImage:[UIImage new]];
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
Expand All @@ -40,9 +39,19 @@ -(void)makeNavigationBarTransparent
@"Option 5",
@"Option 6"];
}
-(NSArray <NSString *>*)menuImageStringArray
{
return @[@"button-folder",
@"button-folder",
@"button-folder",
@"button-folder",
@"button-folder",
@"button-folder"];
}

- (IBAction)doneAction:(UIBarButtonItem *)sender {

// Extension normal
[self showFTMenuFromBarButtonItem:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {
Expand All @@ -51,20 +60,100 @@ - (IBAction)doneAction:(UIBarButtonItem *)sender {

}];

// Extension custom
// [self showFTMenuFromBarButtonItem:sender
// title:@"I am title"
// menuArray:[self menuStringArray]
// menuImageNameArray:[self menuImageStringArray]
// perferedWidth:200
// rowHeight:60
// tintColor:[UIColor blackColor]
// doneBlock:^(NSInteger selectedIndex) {
//
// }
// cancelBlock:^{
//
// }];

//Class Method normal
// [FTPopMenu showFTMenuForViewController:self
// fromBarButtonItem:sender
// menuArray:[self menuStringArray]
// doneBlock:^(NSInteger selectedIndex) {
//
// } cancelBlock:^{
//
// }];

//Class Method custom
// [FTPopMenu showFTMenuForViewController:self
// fromBarButtonItem:sender
// title:@"I am title"
// menuArray:[self menuStringArray]
// menuImageNameArray:[self menuImageStringArray]
// preferedWidth:200
// rowHeight:50
// tintColor:[UIColor blackColor]
// doneBlock:^(NSInteger selectedIndex) {
//
// }
// cancelBlock:^{
//
// }];

}

- (IBAction)showAction:(UIButton *)sender
{

[FTPopMenu showFTMenuForViewController:self
fromView:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {

} cancelBlock:^{

}];
// Extension normal
[self showFTMenuFromView:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {

}cancelBlock:^{

}];

// Extension custom
// [self showFTMenuFromView:sender
// title:@"I am title"
// menuArray:[self menuStringArray]
// menuImageNameArray:[self menuImageStringArray]
// perferedWidth:200
// rowHeight:50
// tintColor:[UIColor blackColor]
// doneBlock:^(NSInteger selectedIndex) {
//
// }cancelBlock:^{
//
// }];


//Class Method normal
// [FTPopMenu showFTMenuForViewController:self
// fromView:sender
// menuArray:[self menuStringArray]
// doneBlock:^(NSInteger selectedIndex) {
//
// } cancelBlock:^{
//
// }];


//Class Method custom
// [FTPopMenu showFTMenuForViewController:self
// fromView:sender
// title:@"I am Title"
// menuArray:[self menuStringArray]
// menuImageNameArray:[self menuImageStringArray]
// preferedWidth:200
// rowHeight:60
// tintColor:[UIColor blackColor]
// doneBlock:^(NSInteger selectedIndex) {
//
// }cancelBlock:^{
//
// }];
}


Expand Down
156 changes: 151 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# FTPopMenu

FTPopMenu. It's wrapped from UIPopoverViewController. Here is a screenshot of it. You are welcome to download this repo, and change the code all you want.


FTPopMenu. It's wrapped from UIPopoverViewController. Here are screenshots of it. You are welcome to download this repo, and change the code all you want.


<img src="/ScreenShots/ScreenShots1.png" width="400"/>
Expand All @@ -17,10 +15,158 @@ FTPopMenu. It's wrapped from UIPopoverViewController. Here is a screenshot of it

<img src="/ScreenShots/ScreenShots6.png" width="600"/>

# Usage

It provides two types of API to show menus.

## Show from UIBarButtonItem

* Extension in `UIViewController+FTPopMenu.h`

```
// Extension normal
- (IBAction)barBottonItemNormalAction:(UIBarButtonItem *)sender {
[self showFTMenuFromBarButtonItem:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {
} cancelBlock:^{
}];
}
// Extension custom
- (IBAction)barBottonItemCustomAction:(UIBarButtonItem *)sender {
[self showFTMenuFromBarButtonItem:sender
title:@""
menuArray:[self menuStringArray]
menuImageNameArray:[self menuImageStringArray]
perferedWidth:200
rowHeight:60
tintColor:[UIColor blackColor]
doneBlock:^(NSInteger selectedIndex) {
}cancelBlock:^{
}];
}
```

* Class Methods in `FTPopMenu.h`

```
// Class Method normal
- (IBAction)barBottonItemNormalAction:(UIBarButtonItem *)sender {
[FTPopMenu showFTMenuForViewController:self
fromBarButtonItem:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {
} cancelBlock:^{
}];
}
// Class Method custom
- (IBAction)barBottonItemCustomAction:(UIBarButtonItem *)sender {
[FTPopMenu showFTMenuForViewController:self
fromBarButtonItem:sender
title:@"I am title"
menuArray:[self menuStringArray]
menuImageNameArray:[self menuStringArray]
preferedWidth:200
rowHeight:50
tintColor:[UIColor blackColor]
doneBlock:^(NSInteger selectedIndex) {
}cancelBlock:^{
}];
}
```

## Show from UIView

* Extension in `UIViewController+FTPopMenu.h`

```
// Extension normal
- (IBAction)buttonAction:(UIButton *)sender
{
[self showFTMenuFromView:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {
}cancelBlock:^{
}];
}
// Extension custom
- (IBAction)buttonAction:(UIButton *)sender
{
[self showFTMenuFromView:sender
title:@""
menuArray:[self menuStringArray]
menuImageNameArray:[self menuImageStringArray]
perferedWidth:200
rowHeight:50
tintColor:[UIColor blackColor]
doneBlock:^(NSInteger selectedIndex) {
}cancelBlock:^{
}];
}
```

* Class Methods in `FTPopMenu.h`

```
// Class Method normal
- (IBAction)buttonAction:(UIButton *)sender
{
[FTPopMenu showFTMenuForViewController:self
fromView:sender
menuArray:[self menuStringArray]
doneBlock:^(NSInteger selectedIndex) {
} cancelBlock:^{
}];
}
// Class Method custom
- (IBAction)buttonAction:(UIButton *)sender
{
[FTPopMenu showFTMenuForViewController:self
fromView:sender
title:@"I am Title"
menuArray:[self menuStringArray]
menuImageNameArray:[self menuStringArray]
preferedWidth:200
rowHeight:60
tintColor:[UIColor blackColor]
doneBlock:^(NSInteger selectedIndex) {
}cancelBlock:^{
}];
}
```




## Maybe you want use [FTPopOverMenu](https://github.com/liufengting/FTPopOverMenu) instead of `FTPopMenu`. It has more simple APIs.

<img src="https://raw.githubusercontent.com/liufengting/FTPopOverMenu/master/ScreenShots/Demo.gif" width="600"/>


## Maybe you want use [FTIndicator](https://github.com/liufengting/FTIndicator) with `FTPopMenu`.<D-r>

# License

`FTPopMenu` is available under the MIT license. See the LICENSE file for more info.
Expand Down

0 comments on commit 02607f5

Please sign in to comment.