【发布时间】:2018-07-30 12:30:13
【问题描述】:
我正面临应用程序内语言更改选项的问题。
我在我的应用中实现了 2 种语言 1) 英语和 2) 希伯来语 根据选择,我正在尝试转换应用语言,但不知何故它停止工作。
以下是我使用的语言代码。
public void changelanguage(String languageToLoad, Context context) {
Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = new Configuration();
context.getResources().updateConfiguration(config,
context.getResources().getDisplayMetrics());
}
对于希伯来语,我使用“iw”一词进行比较。
下面是logcat的日志:
07-30 20:12:26.146 23878-26997/paycalldailer.paycall.co.il V/FA: 不活动,与服务断开连接 07-30 20:12:30.330 23878-23878/paycalldailer.paycall.co.il I/System.out:语言标志 GC::1 07-30 20:12:30.341 23878-23878/paycalldailer.paycall.co.il I/系统输出: 光标::android.content.ContentResolver$CursorWrapperInner@3acb7a4 07-30 20:12:30.341 23878-23878/paycalldailer.paycall.co.il I/System.out:这是 07-30 20:12:30.363 23878-23878/paycalldailer.paycall.co.il I/System.out:更改语言: 电话:07-30 20:12:30.412 23878-26997/paycalldailer.paycall.co.il V/FA: 记录用户参与度,女士:9327 07-30 20:12:30.413 23878-26997/paycalldailer.paycall.co.il V/FA:使用测量 服务 07-30 20:12:30.413 23878-26997/paycalldailer.paycall.co.il V/FA:连接到远程服务 07-30 20:12:30.417 23878-26997/paycalldailer.paycall.co.il V/FA:活动暂停,时间: 38061307 07-30 20:12:30.423 23878-26997/paycalldailer.paycall.co.il D/FA: 记录事件 (FE): user_engagement(_e), 捆绑[{firebase_event_origin(_o)=auto, 参与时间_毫秒(_et)=9327, firebase_screen_class(_sc)=更改语言, firebase_screen_id(_si)=-841994326498933721}] 07-30 20:12:30.440 23878-26997/paycalldailer.paycall.co.il V/FA:使用测量 服务 07-30 20:12:30.440 23878-26997/paycalldailer.paycall.co.il V/FA:连接尝试已在进行中 07-30 20:12:30.489 23878-23878/paycalldailer.paycall.co.il V/FA: onActivityCreated 07-30 20:12:30.529 23878-23878/paycalldailer.paycall.co.il I/AppCompatViewInflater: app:theme 现已弃用。请移至 使用 android:theme 代替。
请建议我哪里错了。它突然停止工作。
【问题讨论】:
-
当它停止工作时你的输出有异常吗?
-
@Flyzzx 没有,没有得到任何异常
-
@Flyzzx,刚刚通过打印语言和更改语言进行了检查。那么问题可能是 UI 没有根据语言反映任何解决方案吗?
-
当您的应用停止工作时,您能否发布输出(来自 Anroid Studio 的控制台)?
-
@Flyzzx 已添加日志请查看
标签: android localization android-resources