Comments (8)
Same i cannot detect any gestures or IBAction in the parallax header. How do intercept the touch?
from mxparallaxheader.
Same here. This would be an awesome thing to know. Thanks!
from mxparallaxheader.
I have achieved it by storing a reference of the tableViewController or scrollViewController or collectionViewController in the headerView. Then set the buttons' touchGestureRecognizer target to your reference and have the function in there to handle the action. It should works that way.
from mxparallaxheader.
For the header:
class HeaderView : UIVIewController {
@IBOutlet weak var button : UIButton!
var parent: UIViewController? // Usually your tableview/scrollview/collectionview
override viewDidLoad() {
let tapGestureRecognizer = UITapGestureRecognizer(target:self.parent!, action:#selector(ParentViewCollection.actionGesture(_:)))
button.userInteractionEnabled = true
button.addGestureRecognizer(tapGestureRecognizer)
}
}
For the "parent":
class ParentViewController : UIViewController {
let header : HeaderView = HeaderView()
override viewDidLoad() {
header.parent = self
self.collectionView!.parallaxHeader.view = header.view
self.collectionView!.parallaxHeader.height = headerHeight
self.collectionView!.parallaxHeader.mode = MXParallaxHeaderMode.Fill
self.collectionView!.parallaxHeader.minimumHeight = 0
}
func actionGesture(sender : UIGestureRecognizer) {
// here you can do what you want with the button
}
}
from mxparallaxheader.
This is a good approach @hongzhou85. Instead of setting a parent
property, you can create a delegate and call that delegate on gesture.
Another approach would be to create a floating view in your view controller from storyboard, then to attach this floating view to your parallax header. This would allow you to trigger segues directly from your header view.
from mxparallaxheader.
Great, the floating view seems to work pretty well. Thanks guys!
from mxparallaxheader.
Great, the floating view seems to work pretty well. Thanks guys!
Any code snippet how you added a floating view. My requirement is that I need to add back button on Top of Parallex header view.
from mxparallaxheader.
This is a good approach @hongzhou85. Instead of setting a
parent
property, you can create a delegate and call that delegate on gesture.
Another approach would be to create a floating view in your view controller from storyboard, then to attach this floating view to your parallax header. This would allow you to trigger segues directly from your header view.
Any code snippet how you added a floating view. My requirement is that I need to add back button on Top of Parallex header view.
from mxparallaxheader.
Related Issues (20)
- Implementation interferes with navbar customization HOT 1
- Items duplicates when added second time HOT 2
- maximumHeight added would be better HOT 1
- MXScrollView cancelled child parallaxHeader-UIScrollView touches HOT 1
- Apple will stop accepting submissions of apps that use UIWebView APIs HOT 2
- How can I set header view height & minimum height with programmatically HOT 3
- I am getting progress value greater than 1.0 initially. HOT 1
- MXScrollView crashes app HOT 21
- parallaxHeader.view not filling superview. HOT 1
- Weird width on MXParallaxHeader 1.1.0 HOT 13
- MXParallaxHeader Scroll issue inside UITableviewHeader HOT 1
- Swift Package Manager support HOT 1
- Keyboard appearance HOT 3
- Animating header height change HOT 1
- The bottom of view in Scrollview is not fully displayed. HOT 2
- Empty space at the bottom of MXScrollViewController HOT 1
- SwiftPackage manager issue HOT 1
- This project is no longer maintained HOT 4
- collectionView.parallaxHeader is nil HOT 1
- Alternative Library HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mxparallaxheader.