Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Do card view with Swift

How can i make a UITableView like the picture on the post ?
I want to replicate this Flat Effect, with spaces between the items.

Result wanted : enter image description here

Wath i have :

https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpf1/v/t34.0-12/10942275_10205438115774113_705893212_n.jpg?oh=0a5f0a97e340ccbe4276f76bbb0fe7c7&oe=54C7FA7D&__gda__=1422376201_01e828a1869caea6a960f8ede9a590d0

like image 501
Pixel Avatar asked Jan 25 '15 20:01

Pixel


People also ask

What is a view SwiftUI?

The SwiftUI framework defines a broad range of primitive views. Text , for example, doesn't return a view. It draws the string it is given to the screen. Those primitive views are the building blocks you can use in the custom views you create to build your application's user interface.


2 Answers

In the cell of the collection view, I've created another UIVIew and gave these properties.

cardView.backgroundColor = .white

cardView.layer.cornerRadius = 10.0

cardView.layer.shadowColor = UIColor.gray.cgColor

cardView.layer.shadowOffset = CGSize(width: 0.0, height: 0.0)

cardView.layer.shadowRadius = 6.0

cardView.layer.shadowOpacity = 0.7

The result that I have achieved is this -

enter image description here

like image 132
Divyansh Jain Avatar answered Sep 28 '22 06:09

Divyansh Jain


You can use this cardview, tell me if it worked for you, it worked for me.

https://github.com/aclissold/CardView/blob/master/README.md

//
//  The MIT License (MIT)
//
//  Copyright (c) 2014 Andrew Clissold
//
//  Permission is hereby granted, free of charge, to any person obtaining a copy
//  of this software and associated documentation files (the "Software"), to deal
//  in the Software without restriction, including without limitation the rights
//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
//  copies of the Software, and to permit persons to whom the Software is
//  furnished to do so, subject to the following conditions:
//
//      The above copyright notice and this permission notice shall be included in all
//      copies or substantial portions of the Software.
//
//      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
//      IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
//      FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
//      AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
//      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
//      OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
//      SOFTWARE.
//

import UIKit

@IBDesignable
class CardView: UIView {

    @IBInspectable var cornerRadius: CGFloat = 2

    @IBInspectable var shadowOffsetWidth: Int = 0
    @IBInspectable var shadowOffsetHeight: Int = 3
    @IBInspectable var shadowColor: UIColor? = UIColor.blackColor()
    @IBInspectable var shadowOpacity: Float = 0.5

    override func layoutSubviews() {
        layer.cornerRadius = cornerRadius
        let shadowPath = UIBezierPath(roundedRect: bounds, cornerRadius: cornerRadius)

        layer.masksToBounds = false
        layer.shadowColor = shadowColor?.CGColor
        layer.shadowOffset = CGSize(width: shadowOffsetWidth, height: shadowOffsetHeight);
        layer.shadowOpacity = shadowOpacity
        layer.shadowPath = shadowPath.CGPath
    }

}
like image 32
Omar Jacobo Muñoz Veliz Avatar answered Sep 28 '22 05:09

Omar Jacobo Muñoz Veliz