🔄 クロスプラットフォーム:iOS、macOS、watchOS、tvOS、visionOSで動作
✨ visionOSネイティブ対応:visionOSではネイティブガラスエフェクトを使用
🎨 高度なカスタマイズ性:色、素材、影などを調整可能
🧩 SwiftUI統合:シンプルなViewModifierの実装
![]() |
![]() |
![]() |
|---|---|---|
| iOS | watchOS I | watchOS II |
![]() |
![]() |
|---|---|
| macOS (ダーク) I | macOS (ダーク) II |
![]() |
![]() |
|---|---|
| tvOS I | tvOS II |
![]() |
![]() |
|---|---|
| visionOS | iPadOS |
iOS 15.0+、macOS 14.0+、watchOS 10.0+、tvOS 15.0+、visionOS 1.0+
Xcode 16.3 (最低要件ではありません)
/Demo/Demo.xcodeproj を開く
Swift Package ManagerでSwiftGlassをプロジェクトに追加
プロジェクト > Package Dependencies > +
https://github.com/1998code/SwiftGlass.git
または以下のように手動で追加することもできます
dependencies: [
.package(url: "https://github.com/1998code/SwiftGlass.git", from: "1.0.0")
]
import SwiftUI
import SwiftGlass
struct ContentView: View {
var body: some View {
Text("こんにちは、ガラス!")
.padding(40)
.glass() // デフォルトのガラスエフェクトを使用
}
}
VStack {
Text("カスタムガラス")
Image(systemName: "sparkles")
}
.padding(30)
.glass(
radius: 20,
color: .blue,
material: .regularMaterial,
gradientOpacity: 0.7,
shadowColor: .blue,
shadowRadius: 10
)SwiftGlassは豊富なカスタマイズオプションを提供しています:
| パラメータ | タイプ | デフォルト値 | 説明 |
|---|---|---|---|
displayMode |
.always または .automatic |
.always |
エフェクトの表示タイミングを制御 |
radius |
CGFloat |
32 |
ガラスエフェクトの角丸半径 |
color |
Color |
.white |
グラデーションとハイライトのベース色 |
material |
Material |
.ultraThinMaterial |
SwiftUIのマテリアルスタイル |
gradientOpacity |
Double |
0.5 |
グラデーションオーバーレイの不透明度 |
gradientStyle |
.normal または .reverted |
.normal |
グラデーションの方向スタイル |
strokeWidth |
CGFloat |
1.5 |
ボーダーストロークの幅 |
shadowColor |
Color |
.white |
ドロップシャドウの色 |
shadowOpacity |
Double |
0.5 |
シャドウの不透明度 |
shadowRadius |
CGFloat? |
nil |
シャドウのぼかし半径 |
shadowX |
CGFloat |
0 |
シャドウの水平オフセット |
shadowY |
CGFloat |
5 |
シャドウの垂直オフセット |
- visionOS:visionOSでは、最適なレンダリングとシステム統合のために、ネイティブの
.glassBackgroundEffect()を使用 - その他のプラットフォーム:マテリアル、グラデーション、シャドウを組み合わせたカスタム実装で同様の効果を実現
SwiftGlassへの貢献を歓迎します!
- バグの報告や機能リクエストは、GitHubでissueを開いてください
- プルリクエストを提出する際は、プロジェクトのコーディングスタイルに従ってください
MIT。詳細はLICENSEファイルをご覧ください。










