uzysjung / uzysslidemenu Goto Github PK
View Code? Open in Web Editor NEWSlide Dropdown Menu
License: Other
Slide Dropdown Menu
License: Other
The delegate method is named 'UzysSMMenuItemDidAction', indicating it is called once the action is completed. However, it's called before the action is completed. This would make any logic that depends on timing function incorrectly.
This is in a recent commit on my fork, where I also factored the method out (it was called two ways) and renamed the delegate method - it had a capitalized name, like a class.
Here's the method:
if (self.item.block) {
self.item.block(self.item);
if([self.delegate respondsToSelector:@selector(UzysSMMenuItemDidAction:)] && self.delegate) {
[self.delegate UzysSMMenuItemDidAction:self];
}
}
Thanks again for the great UI widget, it's very useful!
Hello!
I am big fan of your framework, however, I have been having trouble editing it to match mine and possibly the needs of others. I am using a navigation bar item to display the menu so it naturally appears over my TableViewController, however, when I click the button again it should hide the whole menu. The reason is that the first menu prevents a user from clicking the first row in the tableview.
Currently my solution is to set the itemView.alpha = 0 in the showMainMenu method and the showIconMenu method. I have also tried setting userInteractionEnabled to false and tried making it hidden, however, I still cannot click the first row.
Any suggestions or thoughts on this issue?
Thanks,
Arjun
This slide menu really looks nice! Would be great to offer support for CocoaPods to make the installation even easier.
Is there a way to place the menu at the bottom and have it slide up instead?
Thanks for a great control.
The method 'menuState' returns the property 'state' and does nothing else. It's easier to make the 'state' property available read-only externally and readwrite internally and remove this method.
Also, there is no way to set the state. The 'toggleState' method doesn't allow you to control what state it ends up in. I added this method:
-(void)setState:(UzysSMState)state animated:(BOOL)animated {
self.state = state;
switch (state) {
case STATE_ICON_MENU:
[self showIconMenu:animated];
break;
case STATE_MAIN_MENU:
[self showMainMenu:animated];
break;
case STATE_FULL_MENU:
[self showFullMenu:animated];
break;
default:
break;
}
}
so the menu could be used more ways.
This is in my fork, along with a bunch of other stuff, if you want to check it out.
Thanks for the lovely control. I'm going to file a few issues - things I've noticed as I've started working with it.
When the menu is tapped to open it, it calls the associated item's block. When the menu is tapped again to select an item, that item's block is called as well. Thus each time the menu is used, two blocks are called. This means that the blocks have to handle two different things: when I am tapped to open the menu, and when I am tapped to actually select me.
Hey there,
I just wanted to let you know that i have ported this project over to Xamarin. Hope this is ok with you. I have linked back to your repo from the docs.
Thanks
Alex
Howdy!
I noticed that in a few places, code is reused identically between the animated and non-animated versions of a method. This is easily gotten around, though: put the shared code in a block, and call it, thus:
-(void)showIconMenu:(BOOL)animation {
. . . (put shared code in block here)
if(animation) {
[UIView animateWithDuration:0.3 delay:0 options:UIViewAnimationOptionBeginFromCurrentState|UIViewAnimationOptionTransitionCrossDissolve|UIViewAnimationOptionCurveEaseOut|UIViewAnimationOptionAllowAnimatedContent animations:^{
showIconMenuBlock();
} completion:^(BOOL finished) {
self.state = STATE_ICON_MENU;
}];
} else {
showIconMenuBlock();
self.state = STATE_ICON_MENU;
}
}
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.