# Switching Between Input Methods You can use the APIs of the input method framework service to easily switch between input methods and input method subtypes. > **NOTE** > > 1. The following APIs can be called only in the current input method application. > > 2. For details about how to implement an input method application, see [Implementing an Input Method Application](./inputmethod-application-guide.md). ## Switching Between Input Method Subtypes 1. In the input method application in use, call [switchCurrentInputMethodSubtype](../reference/apis-ime-kit/js-apis-inputmethod.md#inputmethodswitchcurrentinputmethodsubtype9) with the target [InputMethodSubtype](../reference/apis-ime-kit/js-apis-inputmethod-subtype.md#inputmethodsubtype) to switch to another subtype of the current input method. ```ts import { InputMethodSubtype, inputMethod } from '@kit.IMEKit'; export class KeyboardController { async switchCurrentInputMethodSubtype() { let subTypes = await inputMethod.getSetting().listCurrentInputMethodSubtype(); // Obtain all subtypes of the current input method. let currentSubType = inputMethod.getCurrentInputMethodSubtype(); // Obtain the current subtype of the current input method. for(let i=0;i { if(inputMethodSubtype.id == 'InputMethodExtAbility') { panel.setUiContent('pages/Index'); // Assume that the panel has been created in the onCreate process in the input method application. } if(inputMethodSubtype.id == 'InputMethodExtAbility1') { panel.setUiContent('pages/Index1'); // Assume that the panel has been created in the onCreate process in the input method application. } }); } } ``` ## Switching Between Input Methods In the input method application in use, call [switchInputMethod](../reference/apis-ime-kit/js-apis-inputmethod.md#inputmethodswitchinputmethod9) with the target [InputMethodProperty](../reference/apis-ime-kit/js-apis-inputmethod.md#inputmethodproperty8) to switch to another input method. ```ts import { inputMethod } from '@kit.IMEKit'; export class KeyboardController { async switchInputMethod(){ let inputMethods = await inputMethod.getSetting().getInputMethods(true); // Obtain the list of enabled input methods. let currentInputMethod = inputMethod.getCurrentInputMethod(); // Obtain the current input method. for(let i=0;i