編輯:關於Android編程
1.我等屌絲喜歡簡單粗暴,首先來一幅圖
哥們我是大陸人,當然默認語言是 中文簡體,但是我剛剛切換成了繁體了
2.看下配置文件,按照這個格式 ,看圖吧,簡單粗暴,別問為什麼,你就按照這樣寫,如果你想知道為什麼這樣寫,以及詳細的步驟,請百度 : Android 多語言
阿拉伯語 ar, 德語 de ,英語 en ,西班牙 es, 法語 fr ,日語 ja ,韓語 ko ,葡萄牙 pt , 我大天朝 和 港澳台 就略過了,不解釋,
3.注意下所有語言配置文件 string.xml 裡面的文本格式是一樣的,只是語言不同 ,name 是相同的,對應的值不同
4.如何在引用這些鳥東西了,是個Android開發人員都會。。。 還是截個圖吧,
5.進入史上最牛逼的環節, 第一次進入APP
首先引進 公共方法,上代碼
public static final String SYSTEM_LOCALE_LANGUAGUE_STRING = system_locale_languague_string; public static final String SYSTEM_LOCALE_COUNTRY_STRING = system_locale_country_string; public static final String ENAME[]={zh,en,fr,de,ja,ko,es,pt,ar};
public static Locale getSystemLacale(Context context) { SharedPreferences sharedPreferences = getCurrentSharedPreferences(context); String str = sharedPreferences.getString(SYSTEM_LOCALE_LANGUAGUE_STRING, no_languague); String strc = sharedPreferences.getString(SYSTEM_LOCALE_COUNTRY_STRING, ); if (no_languague.equals(str)) { Locale l=Locale.getDefault(); String def=en; for (int i = 0; i < ENAME.length; i++) { if (ENAME[i].equals(l.getLanguage())) { def=ENAME[i]; break; } } Locale nLocale=null; if (zh.equals(def)) { if (CN.equals(l.getCountry())) { nLocale=Locale.SIMPLIFIED_CHINESE; }else { nLocale=Locale.TRADITIONAL_CHINESE; } }else { nLocale=new Locale(def); } setSystemLacate(context, nLocale); return nLocale; } return new Locale(str,strc); } public static void setSystemLacale(Context context,Locale locale){ SharedPreferences sharedPreferences = getCurrentSharedPreferences(context); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString(SYSTEM_LOCALE_LANGUAGUE_STRING, locale.getLanguage()); editor.putString(SYSTEM_LOCALE_COUNTRY_STRING, locale.getCountry()); editor.commit(); }
不用我多解釋吧,獲取系統默認的 Lacale ,為什麼這樣寫了? 我就不解釋了, 如果你有更好的方法,大神你就在下面評論吧!
加入改變語言的方法
private void reloadLanguageAction(){ Locale locale = StaticFunction.getSystemLacate(MainActivity.this); Locale.setDefault(locale); Configuration config = new Configuration(); config.locale = locale; getBaseContext().getResources().updateConfiguration(config, null); getBaseContext().getResources().flushLayoutCache(); }
在哪裡調用了 ? 這個問題跟 學挖掘機哪家強是同一個類型的問題。 上圖
6.語言切換,也就是 你看到的第一張圖,這裡面的功能怎麼搞
為什麼要直接跳到首頁, 不跳行不行了 ? iOS可以不跳,iOS可以發送一個通知,全局一下子改變了, Android我最早的時候嘗試過使用觀察者模式,蛋碎了一地。。。。如果你使用觀察者模式做到了我這種效果,請評論吧。。
2015年08月12日00:36:48 ,擦嘞, 苦逼的程序猿明天還要上班
GridView基礎新建一個HelloGridView的工程修改main.xml代碼如下:<?xml version=1.0 encoding=utf-8&
如果移動端訪問不佳或需要更好的閱讀體驗,歡迎使用 ==> Github 版使用 RadioGroup 和 ViewPager 實現更加可定制的效果。背景昨天設計圖剛
現在的移動端應用幾乎都會通過網絡請求來和服務器交互,通過抓包來診斷和網絡相關的bug是程序員的重要技能之一。抓包的手段有很多:針對http和https可以使用Charle
關於Android中launchMode的文章介紹的真心不少,廣為流傳而且介紹的最詳細的莫過於這篇文章http://blog.csdn.net/android_tutor