Skip to content

Latest commit

 

History

History
145 lines (102 loc) · 5.74 KB

File metadata and controls

145 lines (102 loc) · 5.74 KB
GK

SwiftGlass

Swift バージョン 対応プラットフォーム ライセンス

SwiftGlass@3x

特徴

🔄 クロスプラットフォーム:iOS、macOS、watchOS、tvOS、visionOSで動作
visionOSネイティブ対応:visionOSではネイティブガラスエフェクトを使用
🎨 高度なカスタマイズ性:色、素材、影などを調整可能
🧩 SwiftUI統合:シンプルなViewModifierの実装

ギャラリー

スクリーンショット 2025-04-20 16:16:55 画像 画像
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

Swift Package ManagerでSwiftGlassをプロジェクトに追加

プロジェクト > Package Dependencies > +

https://github.com/1998code/SwiftGlass.git
スクリーンショット 2025-04-20 16:29:46

または以下のように手動で追加することもできます

dependencies: [
    .package(url: "https://github.com/1998code/SwiftGlass.git", from: "1.0.0")
]

使用方法

基本的な使い方(ビュー / ボタン / どこでも)

スクリーンショット 2025-04-20 14:41:51
import SwiftUI
import SwiftGlass

struct ContentView: View {
    var body: some View {
        Text("こんにちは、ガラス!")
            .padding(40)
            .glass() // デフォルトのガラスエフェクトを使用
    }
}

カスタムガラスエフェクト

スクリーンショット 2025-04-20 14:40:11
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ファイルをご覧ください。