WebView
WebView(웹뷰) 위젯은 앱 화면 안에 웹 브라우저 영역을 심어 웹 페이지·HTML 콘텐츠를 보여주는 위젯입니다.
URL, 앱 내부 에셋 경로, 인라인 HTML 데이터를 불러올 수 있고, 페이지와 앱 사이에 데이터를 주고받을 수 있습니다.
정의 / 역할
WebView 위젯은 지정한 콘텐츠를 임베디드 브라우저로 렌더링합니다. 불러올 콘텐츠는 위젯의 타입에 따라 URL·에셋 경로·인라인 HTML 데이터 중 하나로 해석됩니다. 스크롤바 표시, 로딩바 표시, 커스텀 User-Agent, 부모 스크롤 전달(macOS) 등을 설정할 수 있으며, 스크립트로 페이지의 JavaScript를 실행하거나 페이지와 데이터를 주고받을 수 있습니다.
- 카테고리: Contents
- 기본 타입:
url - 기본 크기(Sized Box): 100 x 100
기능
| 기능 | 설명 |
|---|---|
| 콘텐츠 로드 | 타입(url·assetpath·data)에 따라 URL·앱 에셋 경로·인라인 HTML을 불러옵니다. |
| 페이지 로딩 알림 | 페이지 로딩이 끝나면 onFinished 이벤트로 알립니다. |
| 페이지-앱 통신 | 페이지가 hybrid:// 브리지로 보낸 메시지를 onShouldOverrideUrl·onReceiveData로 받고, sendDataToWeb으로 페이지에 데이터를 보냅니다. |
| JavaScript 실행 | runJavaScript·asyncRunJavaScript로 페이지 안의 JavaScript를 실행합니다. |
| 표시 설정 | 세로·가로 스크롤바, 로딩바 표시 여부와 커스텀 User-Agent를 설정합니다. |
사용 방법
- 왼쪽 위젯 팔레트에서 Contents 카테고리를 엽니다.
- WebView 항목을 캔버스로 끌어다 놓습니다.
- 오른쪽 속성 패널에서
type(url·assetpath·data)을 선택하고value에 불러올 주소·경로·HTML을 입력합니다. - 필요하면 스크롤바(
verticalScrollBarEnabled·horizontalScrollBarEnabled)·로딩바(showLoadingBar)·User-Agent(userAgent) 등을 조정합니다.
속성 (Property)
| 속성 | 설명 | 기본값 | 값 / 타입 |
|---|---|---|---|
type | value를 해석하는 방식 | url | url, assetpath, data |
value | 불러올 콘텐츠 (타입에 따라 URL·에셋 경로·HTML) | 빈 값 | 문자열 |
userAgent | 기본 User-Agent 뒤에 덧붙이는 커스텀 User-Agent | 빈 값 | 문자열 |
verticalScrollBarEnabled | 세로 스크롤바 표시 여부 | true | 불리언 |
horizontalScrollBarEnabled | 가로 스크롤바 표시 여부 | true | 불리언 |
embedInParentScroll | 트랙패드/마우스 휠 스크롤을 부모 스크롤 뷰로 전달 (macOS 전용, 다른 플랫폼은 무시) | false | 불리언 |
showLoadingBar | 페이지 로딩 중 로딩바 표시 여부 | true | 불리언 |
주의 / 팁
노트
value가 비어 있으면 아무 콘텐츠도 로드하지 않습니다. type에 맞춰 URL·에셋 경로·HTML 문자열을 정확히 입력해야 합니다.
팁
embedInParentScroll은 macOS에서만 동작합니다. 스크롤 뷰 안에 WebView를 넣을 때 트랙패드/휠 스크롤이 부모로 전달되도록 하며, 다른 플랫폼에서는 무시됩니다.
더 알아보기
팁
이 위젯을 스크립트로 제어하는 Widget Control(Property·Method·Event) 전체는 WebView (웹뷰) Widget Control 문서에서 확인하세요.