Comments (4)
Hi @Sully73, I've completed the implementation of aspectRatio, check the release 1.3.2: https://github.com/mirego/PinLayout/releases/tag/1.3.2
from pinlayout.
Hi @Sully73, thanks for the great comment, it's appreciated 👍
The support of aspectRatio is on my todo list.
What will be implemented:
- Add a method
aspectRatio(:CGFloat)
. If the width or the height has been set, the aspectRatio value will be used to compute the other dimension. If neither dimension (width/height) or both have been specified, aspectRatio won't be applied and a warning will be displayed. - Add a method
aspectRatio()
that will only work with UIImageView. This method will use the UIImageView's image aspect ratio.
I should be able to play with this week.
For the time being the only option I see is to layout your UIImageView in two operations:
let imageSize = myImageView.image!.size
let imageRatio = imageSize.width / imageSize.height
// Layout the UIImageView without specifiying the height.
myImageView.pin.top(20).left(20).width(50%)
// then adjust the height
myImageView.pin.height(myImageView.frame.width / imageRatio)
Soon you'll be able to do:
myImageView.top(20).left(20).width(50%).aspectRatio()
If you have any comment on my aspectRatio
proposition just let me know 🙂
from pinlayout.
What your proposing sounds great. That will handle all of my needs. Thanks
from pinlayout.
Thanks very much!
from pinlayout.
Related Issues (20)
- "view.keyboardLayoutGuide.layoutFrame" is (0,0,0,0) before using "view.pin.keyboardMargins".
- How do I auto-size the container of image view and label? HOT 5
- invalid parameter not satisfying: !cgsizeequaltosize(size, cgsizezero) HOT 7
- Can I use autoSizeThatFits on collection view cell ? HOT 5
- Can I let View A cover B half? HOT 2
- Crash: PinLayout.swift - Line 1236 HOT 7
- How to align base line of two UILabels?
- Interview partners for research about communication in GitHub projects wanted
- H
- Unable to build with Carthage HOT 2
- Crash: PinLayout.swift - Line 1236
- How to use with NSSplitViewController? HOT 3
- How to add separator line below row/cell?
- UIButton with image .aspectRation() not work HOT 1
- Attach view to different edges or use priorities
- Document missing link HOT 1
- ABI stability for swift evolution support for different swift versions
- Problem with sizeToFit - autoSizing HOT 1
- Edge offsets (.top(x), .bottom(x), .start(x), .end(x)) aren't used in autoSizeThatFits HOT 1
- Work on watchOS?
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 pinlayout.