最近在做一个多语言切换的功能,类似于微信的语言切换,搜了下资料基本上都是以下这种: 1. 实现的效果 和微信类似,在设置界面打开切换语言的界面,选择语言后重启 HomeActivity,语言切换完成,下次重新打开 App ,也是用户设置的语言. 2. 实现步骤 1. 添加多语言文件 在不同的 value 文件夹下(例如 value .value-en.values-zh-rTW 文件夹)添加不同语言的 string.xml 文件,我们的项目添加了英文.简体中文.繁体中文三种语言,如下图所示: 其…
最近公司的 App 里需要用到多语言切换,简单来说,就是如果用户没有选择语言选项时,App 默认跟随系统语言,如果用户在 App 内进行了语言设置,那么就使用用户设置的语言.当然,你会发现,App 的语言切换也会导致加载的其它资源文件进行切换 上述内容大概可以分为以下几块: 1. 获取系统默认的语言和地区(**注意地区,后面会讲述这里的坑**) 2. 更改 App 的语言 ## Android 应用资源国际化 在正式开始之前,先来讲解一下 Android 应用资源国际化的知识.对于资源文件的国际…
功能: app用户根据自己的语言喜好,设置app语言.语言设置只针对本app,并在下次启动应用时保留前一次启动设置. 更新语言: public static void changeAppLanguage(Resources resources, String lanAtr) { Configuration config = resources.getConfiguration(); DisplayMetrics dm = resources.getDisplayMetrics(); if (la…
当我们的应用仅仅面向国内用户群,一般仅支持一种语言--中文就可以了.当面向国外用户时就需要进行国际化了,不仅仅是语言的转变,也可能包括设计风格,页面布局.交互效果的转变,如微信,微博,QQ这类应用都有着切换语言的功能. iOS常用的国际化流程 1.建立strings文件.2.在Localization勾选支持的语言,在不同的后缀的同文件名的strings中设置标题.3.使用NSLocalizedStringFromTable(key, tbl, comment) 这个宏取出key对应的value…
1.禁用StatusBar相关功能需要添加权限 <uses-permission android:name="android.permission.STATUS_BAR"></uses-permission> enum StatusBarCmd { DISABLE_EXPAND, DISABLE_NONE, DISABLE_RECENT, DISABLE_NOTIFICATION_ICONS} public static void disableStatusBa…
vue-cli项目中引入vue-i18n 安装: npm install vue-i18n可参考vue-i18n官网文档 main.js中引入: import Vue from 'vue' import VueI18n from 'vue-i18n' Vue.use(VueI18n) 配置语言包(main.js): const i18n = new VueI18n({ locale: 'zh-CN', // 语言标识, 通过切换locale的值来实现语言切换,this.$i18n.locale…
要实现viewpager的滑动以及禁止滑动切换功能只需要继承viewpager,在onTouchEvent进行逻辑判断即可(网上搜到的,确实可行,原创地址不明),下面自己实现一个 import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; public class MyView…
因为android市场很多,去各个应用市场评分的功能却不是很难实现. private void gotoRate(){ Uri uri = Uri.parse("market://details?id=" + getPackageName()); Intent goToMarket = new Intent(Intent.ACTION_VIEW, uri); try { startActivity(goToMarket); } catch (ActivityNotFoundExcept…
最近一个一直在迭代的老项目收到一份新的开发需求,项目需要做国际化适配,简体中文+英文.由于项目中采用了storyboard和纯代码两种布局方式,所以国际化也要同时实现.上网查了些资料,实现了更改系统语言后,修改app内语言的问题.具体国际化方式可以参考下文: 3分钟实现iOS语言本地化/国际化 这篇文章讲的比较详细,很容易实现. 这个需求实现后不久,产品又给我提了一个需求,让我要在app内实现语言切换.还好之前的国际化也做了些准备,不慌不慌. 接下来就是方案的选定,通过广泛查阅资料,得出两个备选…
UI性能测试 性能优化都需要有一个目标,UI的性能优化也是一样.你可能会觉得“我的app加载很快”很重要,但我们还需要了解终端用户的期望,是否可以去量化这些期望呢?我们可以从人机交互心理学的角度来考虑这个问题.研究表明,0-100毫秒以内的延迟对人来说是瞬时的,100-300毫秒则会感觉明显卡顿,300-1000毫秒会让用户觉得“手机卡死了”,超过1000ms就会让用户想去干别等事情了. 这是人类心理学最基础的理论,我们可以从这个角度去优化页面/view/app的加载时间. Ilya Grigo…