ivanvorobei / spstorkcontroller Goto Github PK
View Code? Open in Web Editor NEWNow playing controller from Apple Music, Mail & Podcasts Apple's apps.
Home Page: https://opensource.ivanvorobei.io
License: MIT License
Now playing controller from Apple Music, Mail & Podcasts Apple's apps.
Home Page: https://opensource.ivanvorobei.io
License: MIT License
I tried the readme instructions but all I get is a message that SPStoreController cannot be found:
SPStorkController.scrollViewDidScroll(scrollView)
What am I doing wrong?
First of all thanks a lot for this great framework!
I have multiple view controllers using SPStorkTransitioningDelegate on top of each other, but for some reason when I dismiss the child view controller the parent top position will be above the navigation bar.
Scenario:
Parent view controller first view:
1- Going to the child view controller code:
let storyboard = UIStoryboard(name: "MyStoryBoard", bundle: nil)
let ChildVC = storyboard.instantiateViewController(withIdentifier: "ChildVC")
let transitionDelegate = SPStorkTransitioningDelegate()
ContactsListVC.transitioningDelegate = transitionDelegate
ContactsListVC.modalPresentationStyle = .custom
present(ChildVC, animated: true, completion: nil)
2- Going back to the parent view controller
dismiss(animated: true, completion: nil)
The resulted parent view controller view:
It's working fine on other view controllers I have, and tried to figure out the reason for this specific case but I couldn't.
Appreciate your help :)
viewDidAppear and viewWillAppear not called on parent view controller after dismissing child view controller presented using SPStorkController.
How we can identify that current Presented SPStorkController controller get dismissed.
somehow the parent controller view will appear method is not calling when dismissed the SPStorkController controller.
Thanks
Hey there, just updated to 1.5.4
and am getting this crash when calling presentAsStork
.
dyld: Symbol not found: _$SSo16UIViewControllerC07SPStorkB0E14presentAsStork_6height13showIndicator11complectionyAB_12CoreGraphics7CGFloatVSgSbyycSgtF
Referenced from: /Users/luis/Library/Developer/CoreSimulator/Devices/DB5D83A5-6379-41FD-93C4-0CF5FE3CB65D/data/Containers/Bundle/Application/9532DAAE-57AC-4673-AE12-486AE83F7CE0/ChefBelt.app/ChefBelt
Expected in: /Users/luis/Library/Developer/CoreSimulator/Devices/DB5D83A5-6379-41FD-93C4-0CF5FE3CB65D/data/Containers/Bundle/Application/9532DAAE-57AC-4673-AE12-486AE83F7CE0/ChefBelt.app/Frameworks/SPStorkController.framework/SPStorkController
Any ideas?
hello,
I love your lib it's very easy to work with it, I need to handle when the user swipes down the model controller. could you provide some callback event when the user dismisses the model controller by swipe, kindly do needfully.
Hi, thanks for this amazing pod, it will be so useful for me :)
It was easy for use, thanks for this too but I have a problem :/
When I present a viewcontroller, position of show/hide indicator at navbar is wrong. I think true position is center of navbar. You can understand what I mean with this photo :
If a viewController is presented modally with custom height and has few textfields. Is it possible to increase the size of the modal or offset the contents when keyboard is presented? So that the keyboard isn't in the way of the content.
will appear is not calling after dismissing the popup
Maybe because of the following function:
@available(iOS 11.0, *)
override public func viewLayoutMarginsDidChange() {
super.viewLayoutMarginsDidChange()
self.updateLayout(with: self.view.frame.size)
}
Hi Ivan,
please, is possible set start position/visibility of modal controller on bottom same as Apple music mini player?
Thank You
Martin
Hello Ivan, can I disable swipe to dismiss when swiping in UITextView? I mean disable swipe to dismiss for specific view and keep it for other views in the view controller.
Why we can't install library into swift 4.2
I want to dismiss the view when i tap on the gray indicator at the top like in the Apple Music.
I would like to change the corner radius for SPStorkController
I have presented the SPStorkController with navigation controller.
Then Swipe to dismiss not working!!
Thanks
it looks like that the following method needs to be implemented to work with TableViewControllers and CollectionViewControllers:
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool { return true }
Hi!
First of all thanks for this great library!
I am using cocoapods 1.4.2
and found out that the transition doesn't work right if the source controller is embedded in an navigation controller with barStyle = .black
Most of the times the transition doesn't happen and when it does, it does with significant delay. If the barStyle is default there is no problem.
Is it possible to present UIImagePickerController as SPStorkController? When I try to do this it presents in full screen.
HI, I'm trying your pod in my project, and I can't use your presentation style on viewController, which has navigationController.
so UINavigationController -> UIViewController (configure transitionDelegate:SPStorkTransitioningDelegate and etc. like in example) -> present ModalViewController => default presentation style :(
if I try navigationController?.present(controller, animated: true, completion: nil)
that also don't work
Any advice? Thank you!
I want to use SPStorkController in storyboard via Segues. But I am not be able to do it.
i tried this.
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let vc = segue.destination
let transitionDelegate = SPStorkTransitioningDelegate()
vc.transitioningDelegate = transitionDelegate
vc.modalPresentationStyle = .custom
}
In storyborad my segue is kind of presentModally
When I present a UIVewController using SPStorkController it breaks swipe gestures for UITableView rows, I mean swipe to delete gesture or any swipe gesture, the delete option will not appear when you swipe unless your swipe was very very fast, if your swipe was fast then the option will appear, if your swipe was normal the option will not appear, just open your example project and add the following code to enable swipe to delete option and test it.
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
}
https://github.com/IvanVorobei/SPStorkController/tree/master/Example
Hello
Thanks for making this library. I do not see translateForDismiss when I try to use the library.
It's also not a public var
public var isSwipeToDismissEnabled: Bool = true
public var isTapAroundToDismissEnabled: Bool = true
public var showIndicator: Bool = true
public var indicatorColor: UIColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1)
public var customHeight: CGFloat? = nil
Could you tell me what I am missing?
Thanks
I unable to push controller from presentview of SpstorkController
I haven't seen any issues related to using a background blur. Can this be possible with the SPStorkController? I assume simply putting a blur view in the view controller being presented would not work because of the snapshot. Maybe I'm wrong.
I'll try to see if this solution works when I get a chance: http://justabeech.com/2014/10/22/using-uivisualeffectview-in-a-modal-view-controller/
I got the following errors when using tableview with SPStorkController:
2019-02-16 12:47:27.071021-0500 Test[13833:395395] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C1.1:2][0x104f1d070] get output frames failed, state 8196
2019-02-16 12:47:27.071418-0500 Test[13833:395395] [BoringSSL] nw_protocol_boringssl_get_output_frames(1301) [C1.1:2][0x104f1d070] get output frames failed, state 8196
2019-02-16 12:47:27.073086-0500 Test[13833:395395] TIC Read Status [1:0x0]: 1:57
2019-02-16 12:47:27.073655-0500 Test[13833:395395] TIC Read Status [1:0x0]: 1:57
2019-02-16 12:47:28.492863-0500 Test[13833:395207] [framework] CUIThemeStore: No theme registered with id=0
Hi Ivan,
I cannot find this parameter: transitionDelegate.showCloseButton.
Thank You
Martin
Can I add UITableView or UITableView or UITableViewCell via storyboard rather than do it programmatically?
What's the correct way to delete snapshot ViewController I don't want translate effects
I am trying to open stork view and this view has delegate to main view. Mainview delegate triggered and I dismiss stork view. Once I try to reopen it, it does not show as stork.
Attaching my test project.
Currently, when swiping/dragging from top to bottom, it is ok to dismiss the controller.
However, when I come across from AppleMusic, I found the distance needed before it can dismiss itself is a bit too long as it affects the UX.
Could you shorten or tune a bit? Or give a option to custom it?
Приветствую! Заметил, что при установке высоты (будь то 100, 500 или 200000) нет ограничения по максимальной высоте.
Неплохо было бы сделать проверку если customHeight больше дефолной высоты контейнера для презентации контроллера.
С Уважением, Сергей.
I've added the pod (version 1.6) and when compiling the app I get a compile error in SPStorkPresentationController.swift.
The error is: Type 'CAMediaTimingFunctionName' (aka 'NSString') has no member 'easeOut'
Thank you!
I get this error Unable to find a specification for SPStorkController when put pod install when I try to install this pod on just created project with swift 4.2 why?
When we present a view controller using SPStorkController then turn on personal hotspot then go back to the app, it will look like this:
But if we turn on personal hotspot first, then present a view controller using SPStorkController it will look like this:
Can we fix the issue in the first situation and make it look like the screenshot in the second situation?
Look at SPStorkPresentationController
class. You use only local var isSwipeToDismissEnabled: Bool = true
but isSwipeToDismissEnabled
property of transitioningDelegate
never used.
As a result, the code has no effect:
let transitionDelegate = SPStorkTransitioningDelegate()
transitionDelegate.isSwipeToDismissEnabled = false
I guess, you should fix it something like this:
if transitioningDelegate?.isSwipeToDismissEnabled ?? isSwipeToDismissEnabled { ...
func scrollViewDidScroll(_ scrollView: UIScrollView) {
SPStorkController.scrollViewDidScroll(scrollView)
}
Adding this code does make it pan with scroll but letting go after pulling down still does not make it dismiss.
Any plans to support Carthage ?
Thanks for your work!
Hello thank you so much for great plugin
let controller = UIViewController()
controller.transitioningDelegate = SPStorkTransitioningDelegate()
controller.modalPresentationStyle = .custom
present(controller, animated: true, completion: nil)
controller.transitioningDelegate = SPStorkTransitioningDelegate(): Instance will be immediately deallocated because property 'transitioningDelegate' is 'weak'
I got app stuck when using this code
thank you
I want to give custom height of pop up . previously it was happen but now after update its not found custom height .
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.