LoginSignup
4
1

【SwiftUI】内側に影をつける

Last updated at Posted at 2023-06-01

はじめに

iOS16から影が内側に付けられるようになりました。

実装

import SwiftUI

struct ContentView: View {
    private let baseColor: Color = .init(red: 232/255, green: 232/255, blue: 232/255)
    
    private let shadowColor: Color = .init(red: 197/255, green: 197/255, blue: 197/255)
    
    var body: some View {
        RoundedRectangle(cornerRadius: 10)
            .fill(baseColor.gradient.shadow(.inner(color: shadowColor, radius: 8, x: 20, y: 20)))
            .frame(width: 300, height: 300)
    }
}

Simulator Screenshot - iPhone 14 - 2023-06-01 at 22.58.53.png

ちょっと凹んでるように見えるかな?

おわり

dropにするだけで外側の影になります

import SwiftUI

struct ContentView: View {
    private let baseColor: Color = .init(red: 232/255, green: 232/255, blue: 232/255)
    
    private let shadowColor: Color = .init(red: 197/255, green: 197/255, blue: 197/255)
    
    var body: some View {
        RoundedRectangle(cornerRadius: 10)
            .fill(baseColor.gradient.shadow(.drop(color: shadowColor, radius: 8, x: 20, y: 20)))
            .frame(width: 300, height: 300)
    }
}

simulator_screenshot_2D9996DB-A146-4EE8-A5B2-EF4E818E674A.png

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1