@@ -29,6 +29,7 @@ Use SwiftUI with NativeScript.
2929 - [ Open Multiple Scenes] ( #open-multiple-scenes )
3030 - [ Passing contextual data to scenes] ( #passing-contextual-data-to-scenes )
3131 - [ Closing windows] ( #closing-windows )
32+ - [ Use NativeScriptView inside SwiftUI] ( #use-nativescriptview-inside-swiftui )
3233 - [ Credits] ( #credits )
3334 - [ License] ( #license )
3435
@@ -49,6 +50,12 @@ For example, you can add this line to your `App_Resources/iOS/build.xcconfig`:
4950IPHONEOS_DEPLOYMENT_TARGET = 13.0
5051```
5152
53+ :::tip Note
54+
55+ If you would like to use ` NativeScriptView ` inside SwiftUI, you should target 14.0 minimum.
56+
57+ :::
58+
5259## Usage
5360
5461![ SwiftUI Source Files Example] ( https://raw.githubusercontent.com/NativeScript/ui-kit/main/packages/swift-ui/swift-ui-source-files-example.png )
@@ -357,6 +364,40 @@ struct NeatView: View {
357364
358365` XR.endSession() ` for an Immersive Space which is already open will close it.
359366
367+ ## Use NativeScriptView inside SwiftUI
368+
369+ You can also use NativeScript view layouts and components inside SwiftUI when targeting iOS 14.0 minimum.
370+
371+ Add this line to your ` App_Resources/iOS/build.xcconfig ` :
372+
373+ ```
374+ IPHONEOS_DEPLOYMENT_TARGET = 14.0
375+ ```
376+
377+ You can now register as many NativeScript views by an id for usage:
378+
379+ ``` ts
380+ import { SwiftUIManager } from ' @nativescript/swift-ui'
381+
382+ SwiftUIManager .registerNativeScriptViews ({
383+ Video: SceneVideoComponent
384+ })
385+ ```
386+
387+ This will allow ` SceneVideoComponent ` , a NativeScript view component, to be used inside any SwiftUI component:
388+
389+ ``` swift
390+ struct ContentView : View {
391+
392+ var body: some View {
393+
394+ ZStack {
395+ NativeScriptView (id : " Video" )
396+ }
397+ }
398+ }
399+ ```
400+
360401## Credits
361402
362403- WindowManager and XR APIs were established with the Callstack team. Shoutout to: [ Oskar Kwaśniewski] ( https://github.com/okwasniewski ) .
0 commit comments