1
新しい(比較的シンプルな)キーボードを設計するためのドキュメントを提供したAndroid sampleに従っています。この時点で私は構成変更(テーマ、textSize、複雑なものなど)に悩まされています。これはIMEを再作成する必要があります。Androidキーボード(IME)の設定変更を処理するにはどうすればよいですか?
public class ImePreferences extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
setTheme(R.style.AppTheme_WithActionBar);
super.onCreate(savedInstanceState);
PreferenceManager.getDefaultSharedPreferences(this).registerOnSharedPreferenceChangeListener(this);
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
// reload ime
Log.d("anbani", "Stopping service " + String.valueOf(stopService(new Intent(this, SoftKeyboard.class))));
Log.d("anbani", "prefs changed");
}
...
}
これは役に立ちません。 StopServiceの値はtrueが返されますが、効果はありません。
パッケージキーボードのインスタンスを取得するためのトリックは、事前に参照する必要はありませんか?または、ここに何か簡単なものがありませんか?
ヒントをお聞かせください。