Just a Computer Graphics Studio & My Life

Archive for 四月, 2015

[圖解] 軍公教近五年退撫基金

先前見識過圖解公職教職軍職勞工退休後領的錢,知道軍公教有相當好的福利制度,但事情總會有另一面,也就是有好就有壞,基於現實世界的收支問題,從圖解軍公教近五年退撫基金就能知道它就破產啦⋯⋯

軍公教退撫基金收支狀況

破產所帶來的影響就是,現在越年輕的人未來可能領不到退休金!若不趕緊改革的話,大概就會像會館前輩說的日本現況,連砍半三次退休金,也就是剩八分之一甚至更少可拿。日本老年人比例破六成,年輕人繳的稅不夠給老年人,台灣未來就會朝這個趨勢發展⋯⋯

這時候就會靠邊站,老年人不想被縮減退休金,而年輕人清楚一定要改革,政客不想得罪任何一方,只求政治家能悟出兩全其美之道。

以上可以先參考,期許每個人都拿應得的報酬,過於「貪」將引來「嗔」與「癡」。

參考:軍公教退撫基金 收支首見赤字台灣史上最大的龐式騙局

[iOS] 應用內連結到App Store

先前知道可以實作連結到App Store,在App中觸發事件來開啟App Store,並顯示特定App畫面,這時候發現有另一種選擇,就是不用開啟App Store,就能顯示該App在App Store顯示的樣子。這麼做的好處是讓使用者體驗更好,因為我發現自己在使用App時,被導出App時都會很不耐煩XD~因為看完之後,還要按Home鍵來回到原來的App。

在App外,開啟App Store的樣子。

在App外,開啟App Store的樣子。

(繼續閱讀…)

[iOS] 打包物件 (Archive Object)

有時候我們想要傳遞複雜的物件,比如影像(image)特性字串(AttributedString)放到Dictionary中以Key/Value儲存,我們就能隨意帶著Dictionary到處趴趴走~這時候可以打包物件 (Archive Object)

Archive Object

就如同我們所想的那樣,需要封裝(Archive)解開(Unarchive)

/**
 Theme: Archive Object
 IDE: Xcode 6
 Language: Objective C
 Date: 104/04/23
 Author: HappyMan
 Blog: https://cg2010studio.wordpress.com/
 */
- (void)viewDidLoad {
    [super viewDidLoad];
#pragma mark - 這裡只是準備複雜特性的字串
    NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:@"Happy World ^_^"];
    NSRange range = NSMakeRange(0,string.length);
    UIFont *markerFeltWide = [UIFont fontWithName:@"Arial" size:20.0f];
    //字型
    [string addAttribute:NSFontAttributeName value:markerFeltWide range:range];
    //前景顏色
    [string addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:range];
    //背景顏色
    [string addAttribute:NSBackgroundColorAttributeName value:[UIColor lightGrayColor] range:range];
    //底線
    [string addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInt:1] range:range];
    //字間距
    [string addAttribute:NSKernAttributeName value:[NSNumber numberWithInt:5] range:range];
    //陰影
    NSShadow *shadowDic=[[NSShadow alloc] init];
    [shadowDic setShadowBlurRadius:3.0]; //0 ~ ? 清晰~模糊
    [shadowDic setShadowColor:[UIColor blackColor]];
    [shadowDic setShadowOffset:CGSizeMake(3, 3)];
    [string addAttribute:NSShadowAttributeName value:shadowDic range:range];
    //描邊顏色
    [string addAttribute:NSStrokeColorAttributeName value:[UIColor orangeColor] range:range];
    //描邊線條粗細 正數描邊 負數描邊加填滿
    [string addAttribute:NSStrokeWidthAttributeName value:[NSNumber numberWithInt:-3.0] range:range];

#pragma mark - 封裝
    NSMutableDictionary *happyInfo = [NSMutableDictionary new];
    
    UIImage *image = [UIImage imageNamed:@"HappyMan.jpg"];
    NSData *imageData1 = [NSData dataWithData:UIImageJPEGRepresentation(image, 1.0f)];
    happyInfo[@"imageKey"] = [NSKeyedArchiver archivedDataWithRootObject: imageData1];
    NSAttributedString *myString = string;
    happyInfo[@"stringKey"] = [NSKeyedArchiver archivedDataWithRootObject: myString];
    
#pragma mark - 解開
    NSData *archiveImageData = happyInfo[@"imageKey"];
    NSData *imageData = [NSKeyedUnarchiver unarchiveObjectWithData: archiveImageData];
    UIImage *happyImage = [UIImage imageWithData:imageData];
    NSData *stringData = happyInfo[@"stringKey"];
    NSAttributedString *happyString = [NSKeyedUnarchiver unarchiveObjectWithData: stringData];
    
    [self.happyImageView setImage:happyImage];
    [self.happyTextView setAttributedText:happyString];
}

這裡需要注意的是,影像必須要先轉成Data再來封裝,而一般字串類資料可以直接封裝,這還有道理XD~

範例中的特性字串含有者些訊息:

Happy World ^_^{
NSBackgroundColor = “UIDeviceWhiteColorSpace 0.666667 1″;
NSColor = “UIDeviceRGBColorSpace 0 1 0 1″;
NSFont = " font-family: \"Arial\"; font-weight: normal; font-style: normal; font-size: 20.00pt";
NSKern = 5;
NSShadow = “NSShadow {3, 3} blur = 3 color = {UIDeviceWhiteColorSpace 0 1}";
NSStrokeColor = “UIDeviceRGBColorSpace 1 0.5 0 1″;
NSStrokeWidth = “-3″;
NSUnderline = 1;
}

如此就能在有限制情況下傳遞資料囉~這可以用在Watch AppiOS App上的溝通呢!

參考:NSMutableAttributedStringMy Biggest WatchKit Mistake

[iOS] 動態框架 (Dynamic Frame)

不知怎麼稱呼,就先叫做動態框架 (Dynamic Frame)吧!描述一下我想達到的效果,簡單來說就是根據文字多寡,來讓顯示的界面可以跟著調整,最後所想要呈現的字不會被介面擋到。

因為很多時候是不知道字數的多寡,通常是在運行的時候才會知道,特別是從網路上取得的資料,此時我們會想要做這件事。

(繼續閱讀…)

[iOS] TextField Inset

實在不知道怎麼翻TextField Inset,我會把它描述為「留邊」。因為TextField沒有ContentInset這個property,所以要另找技巧來實現。

TextField Inset

可以見到舊密碼密碼確認Placeholder緊靠著左側,設定過後如新密碼,向右邊位移一段距離。

(繼續閱讀…)

圖片

蒐集銀行汽車貸款

MSN的時代已過去,現在Line已成為全台灣最受歡迎的通訊App,今年過年還特地幫老爸申請一個帳號,現在他三不五時就會傳送影片給我看XD~

蒐集銀行汽車貸款

每當有人加我好友,我總是喜出望外,直到機器人帳號逐漸猖獗,我才失去好奇心。現在我納悶銀行汽車貸款有那麼好賺嗎?怎麼電話總是接不完,現在還會自動加我Line呢~明明我就沒有汽車,聰明的女生便問我家人有沒有剛買才而且在貸款⋯⋯

(繼續閱讀…)

[APP] 城市公車 (City Bus)

曾經使用過許多款跟公車有關的App,直到使用城市公車App讓我眼睛為之一亮,不是因為它功能有多華麗好用,而是因為它介面設計的讓人愛不釋手!所以也才讓我想要紀錄分享,對於使用者而言,第一印象會是想要繼續使用與否的關鍵,它總會讓我想多看一眼呢~

APP 城市公車00006

功能主要分這三個:

  • 路線搜尋
  • 我的最愛
  • 附近站牌

我想會使用公車App的人主要就這三個需求吧!在路上打開馬上就能找到功能。

(繼續閱讀…)

標籤雲

%d 位部落客按了讚: