Just My Life & My Work

Posts tagged ‘language’

[iOS] 檢查多國語言檔案 (Check Localization File)

沒想到簡單的多國語言檔案,也能造成App邏輯出現問題呢⋯⋯

這次由於檔案中莫名多了個「看不見的字元」,編譯能過,但卻讓NSLocalizedString(key, comment)出現問題!原本傳key會回value,出了問題後傳key會依然回key⋯⋯

(繼續閱讀…)

[iOS] 在Objective C使用Swift的Singleton

隨著Swift發展日益盛行,以Objective C為主開發的我要開始與Swift「交互作用」,這次主題是在Objective C使用Swift的Singleton,這看似很容易達成的用法,卻在我又多了C語言來混用,就變得複雜啊~

[iOS] 在Objective C使用Swift的Singleton.png

(繼續閱讀…)

Swift 第4版本

Swift已經升級到第4版本,我還是沒認真在寫Swift 4,主要是因為它還不太穩定,這幾年必須多花時間去改寫語法到最新版本,於是在有限的開發時間下,我依然對相對穩定的Objective C情有獨鍾XD~

舉一個例子,當我要使用Open Source ChartsXcode會偵測是否相容,否則就無法編譯成功,如圖:

Swift 第4版本.png

好在只要選擇到Swift 4,就能成功編譯!也感謝超好用的圖表開源Charts作者,願意每次Swift升級就改寫語法,造福我們成千上萬的iOS開發者

怎麼在Objective C中使用Swift Open Source?可參考文章:在Objective C專案使用Swift第三方套件

[iOS] App 預設語言 (App Default Language)

我App中有三個Localization,分別是:

  • 繁體中文
  • 簡體中文
  • 英文

使用者可以在這三個隨意切換,來顯示他想要的語言介面。

三年前已有實現過多國語言化的預設語言 (Default (Fallback) Language of Localization),不過那篇文章我是有寫code,這次只要調整專案中的Info.plist即可!

[iOS] App預設語言.PNG

調整過後,我切換到日語(SIM字眼旁是日文),App介面語言是英文喔~

(繼續閱讀…)

[圖解] 程式語言熱門排名

想要學寫程式的人,總要先知道自己的目的是什麼?如果還不知道的人,可以去測驗一下圖解我該學什麼程式語言?

亦或者可以參考世界上最多人使用的程式語言,在GitHub上程式語言熱門排名圖解

programming language rank on github.jpg

可以看到Javascript從2013年成為第一熱門語言,大概跟Node.js發展有非常大的關係。Objective-C則在2015年從排行榜消失,猜測是因為越來越多開發者轉向Swift發展。

表現越來越突出的是Java,我公司資深工程師楊大建議我學Java,對未來無往不利,然而我卻想要學Javascript。哈~透過Node.js,就能寫出前後端的服務!

參考:

[圖解] 如果論文跟程式語言一樣

週末就來點幽默小品吧~學過許多程式語言的我,看到圖解如果論文跟程式語言一樣自然會心一笑,因為真的是「吐嘲」到語言的痛處啊!

現在我主要寫的語言是Objective C,對於不熟的語言抱持著敬佩的態度,畢竟要能廣泛被程式設計師使用,一定有其獨到之處,所以不用太在意人家會的語言而自己卻不會唷~

以下有八種程式語言,如果你精通其中一項,而且知道其他語言,那麼大概會知道教授為何那麼說嚕~

如果論文跟程式語言一樣

重點是⋯⋯知道自己要的是什麼就好啦!

老實說,我看不懂HTML那個花盆是啥意思耶><~

LATEX這語言XD?

請高手幫我解答一下⋯⋯

我在想,要是把Objective C也畫上去,圖中那個教授會講什麼話呢?「為什麼你要用那麼多中括號[]?

參考:如果把不同語言的程式比作將受批評的論文漫畫:如果用編程語言來寫作文

[iOS] 多國語言化的預設語言 (Default (Fallback) Language of Localization)

繁體中文(因為是母語喲!)為主來做多國語言化,另外兩個語言是簡體中文英文,跟著多國語系 (Localization)這篇文章做,照理說已經沒有其它問題,但是呢⋯⋯若哪天日本人想用這個App,那麼他會看到哪個語言?實際跑過發現是偉大的繁體中文,然而我們的期望卻是套用英文,這時候該怎麼辦呢?打掉重練?噢~不。

Default (Fallback) Language of Localization

(繼續閱讀…)

[iOS] 偏好語言 (Prefer Language)

一個能夠跨國際使用的App,需要多國語言化(Localization),之前介紹的是系統運行時自動轉換字串的語言,然而我們想要知道目前使用者的偏好語言 (Prefer Language),來做更進一步的運用,比如將語言碼當作參數傳遞。

/**
 Theme: Language
 IDE: Xcode 6
 Language: Objective C
 Date: 103/10/14
 Author: HappyMan
 Blog: https://cg2010studio.wordpress.com/
 */
    // 記錄語言碼
    NSString *languageStr = [[NSLocale preferredLanguages] objectAtIndex:0];
//    NSString *languageStr = [[[NSBundle mainBundle] preferredLocalizations] objectAtIndex:0];

    if ([languageStr isEqualToString:@"zh-Hant"]) {// 繁中
        self.languageCode = @"2";
    }
    if ([languageStr isEqualToString:@"zh-Hans"]) {// 簡中
        self.languageCode = @"1";
    }
    if ([languageStr isEqualToString:@"en"]) {// 英語
        self.languageCode = @"0";
    }

有兩種用法可行,注意事項請看文件說明!

使用說明

+ (NSArray *)preferredLanguages NS_AVAILABLE(10_5, 2_0);
note that this list does not indicate what language the app is actually running in; the [NSBundle mainBundle] object determines that at launch and knows that information

@property (readonly, copy) NSArray *preferredLocalizations;
a subset of this bundle’s localizations, re-ordered into the preferred order for this process’s current execution environment; the main bundle’s preferred localizations indicate the language (of text) the user is most likely seeing in the UI

參考:Getting current device language in iOS?

一個禮拜有七天

時間真是不夠用哪~週而復始,許多人跟我一樣都在忙、茫、盲一天只有二十四小時,馬不停蹄地為著自己的未來打拼奮鬥!真想有兩個我,甚至像火影忍者裡的漩渦鳴人那樣可以影分身,分別由七個不同的我努力著七個方向,然後變回來的自己⋯⋯想當然爾,知識、技能、經驗、智慧超人一等!

一個禮拜有七天

看到這張圖表-星期一到星期日的命名由來,我笑了⋯⋯直接發音翻譯,意思還恰到好處呢!

  1. 星期一:忙day
  2. 星期二:求死day
  3. 星期三:未死day
  4. 星期四:受死day
  5. 星期五:福來day
  6. 星期六:灑脫day
  7. 星期日:傷day

學英語這樣子最快了:P!

(繼續閱讀…)

[寫真] MP3多媒體喇叭 (DeeJay)

真沒想到聽場國際會議,居然需要聽FM廣播!?原來演講者不只會講國語,還會講粵語英語,於是就有三個頻道供與會人士選擇~

想說FM這麼老舊的玩意兒,實在不需要買太好的規格,因為我會用到它的機會很少,不過既然都要購買一個,那就仔細研究一下市場上可聽FM廣播的機子,於是我就選擇一台功能頗多的MP3多媒體喇叭 (DeeJay)

MP3多媒體喇叭 DeeJay (1)

(繼續閱讀…)

標籤雲