# 초기화하기

Wepin iOS Widget Pad 라이브러리를 초기화하는 방법은 다음과 같습니다.&#x20;

`WepinWidget` 인스턴스를 생성하기 전에, App ID와 App Key를 `WepinWidgetParams` 객체에 다음과 같이 전달해 주세요.

```swift
let initWidgetParam = WepinWidgetParams(viewController: UIViewController, appId: appId, appKey: appKey)
```

앞서 생성한 `WepinWidgetParams` 를 전달하면서 `WepinWidget` 인스턴스를 생성해 주세요.

```swift
var wepinWidget = WepinWidget(initWidgetParam);
```

`WepinWidget` 인스턴스생성 후 `initialize` 메서드를 호출하여 초기화를 합니다.

```swift
await wepinWidget?.initialize(attributes: attributes)
```

#### parameters

&#x20;`attributes` \<WepinWidgetAttributes>

* `defaultLanguage` \<String>\
  위젯 화면의 기본 언어 설정, 기본 값은 `'en'` 입니다. 현재 지원하는 언어는 `'ko'`, `'en'` ,`'ja'`입니다.
* `defaultCurrency` \<String>\
  위젯 화면의 기본 통화 설정, 기본 값은 `'USD'` 입니다. 현재 지원하는 통화는 `'KRW'`, `'USD'`, `'JPY'` 입니다.

#### Return value

`<Boolean>`\
정상적으로 잘 된 경우 **true** , 실패한 경우 **false** 를 반환합니다.

### Example

```swift
let appKey: String = "Wepin-App-Key"
let appId: String = "Wepin-App-ID"
var wepinWidget: WepinWidget? = nil
let initWidgetParam = WepinWidgetParams(viewController: self, appId: appId, appKey: appKey)
wepinWidget = WepinWidget(initWidgetParam)
// Call initialize function
let attributes = WepinWidgetAttributes(defaultLanguage: "en", defaultCurrency: "USD")
if let res = try await wepinWidget?.initialize(attributes: attributes) {
    self.tvResult.text = "Successed: \(res)"
} else {
    self.tvResult.text = "Failed: No result returned from initialization"
}
```

## isInitialized

`isInitialized` 메서드를 사용하여 `WepinWidget` 인스턴스가 올바르게 초기화되었는지 확인할 수 있습니다. 반환 값은 다음과 같습니다:

* \<Bool>\
  초기화가 정상적으로 잘 된 경우 **true** , 실패한 경우 **false** 를 반환합니다.

```swift
let result = wepinWidget!.isInitialized()
```

## changeLanguage

```swift
wepinWidget!.changeLanguage("ko", currency: "KRW")
```

위젯 화면에 표시되는 언어를 변경합니다. 현재 `'ko'`, `'en'`, `'ja'`만 지원됩니다. <br>

**Parameters**

* &#x20;`language`\<String>
* `currency` \<String>

### **Return value**

* \<Void>

### Example

<pre class="language-swift"><code class="lang-swift"><strong>wepinWidget!.changeLanguage("ko", currency: "KRW")
</strong></code></pre>
