What Is Software Design?

程式設計不是 “building software”,而是 “designing software”。

2013年12月19日 星期四

Bower 管理網站套件 使用Polymer

bower 是 Twitter 團隊開發的一套網頁工具,用來管理或安裝 Web 開發所需要的 Package,像是 CSS 和 JavaScript,也可以依據套件的相依性來安裝,簡單來說,開發者不用再去煩惱套件相依性問題,以及時間久了想更新最新版本,還要到各 Package 網站來下載,這些步驟都省了,一個指令就可以全部做完上述的步驟。透過 Node.js 的 npm 工具來安裝 指令npm install bower -g 需要等上一段時間 查詢已經安裝的套件: $ bower list 假設要安裝 jQuery 套件,請執行底下指令 $ bower install bootstrap spine jquery 執行上述指令,會列出專案安裝的套件名稱及版號 /home/www ├── backbone-amd#0.9.9 ├──...

2013年11月7日 星期四

git - 在 master 上面加上新 tag

git - 在 master 上面加上新 tag git tag -a (v1.3branch) -m "Release v1.3 Tag" ==================================== git tag v2.4.0  <===給tag git push --tags <==tag push 上...

2013年11月6日 星期三

判斷是否為 iPhone 5

#define iPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO) 所以當使用時,僅需照以下寫法使用即可囉if (iPhone5)//do something for iPhone 5else//do something for iPhone 4s 4 3GS et...

ios table view 要把 Header table 拿掉

//設置Header table的高度 - (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {     return 1; ...

cocoapods 的更新指令

要更新 cocoapods sudo gem update cocoapods 要更新 podfile內的版本 pod upd...

2013年10月24日 星期四

Eclipse 顯示中文 編輯中文 中文亂碼

step1. step2. 恭喜你的亂碼,是否已經變回正常的中文字了...

2013年10月17日 星期四

輸入Picker View 樣式 資料時 navigation bar 要灰色 不能使用

step1. 全域宣告 UIButton *barBlockBut;  像是如下: @interface SportViewController () <UITextFieldDelegate> {   UIButton *barBlockBut; } step2. 調用textFieldDidBeginEditing - (void)textFieldDidBeginEditing:(UITextField *)textField {     if(textField == (sportTimeTextField 這裡填寫您輸入的textField))     {         if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1)         {         self.view.window.tintAdjustmentMode...

2013年10月4日 星期五

ios7 status bar 隱藏 hide

ios7對於 狀態列有很大的改變 舊的程式碼為 [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide]; 不過在ios7中這個方法已經無法work了 解決方法1. 到infor.plist中 加入 key: UIViewControllerBasedStatusBarAppearance設置為no 這樣就告訴系統說 status bar 不依賴 UIViewcontroller. 解決方法2. - (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; //UIStatusBarStyleDefault = 0 黑色文字,浅色背景时使用 //UIStatusBarStyleLightContent = 1 白色文字,深色背景时使用 } 上面的code是控制顯示時的樣式,下面的code是控制是否顯示status bar 調用以下的code 會觸發上面的code - (BOOL)prefersStatusBarHidden { ...

2013年9月27日 星期五

git commit 排除掉不需要的資料

在git 裡面需要commit 最笨的方法就是 git add . 的指令會把所有東西都commit 上去 有些檔案我們不希望加入版本控制的追蹤,例如說Database的schema或是一些log檔,這時候你可以將他們加入 .gitignore 中來讓 Git 忽略他們,使用編輯器來打開你的 .gitignore 檔案。 利用這樣的方法  再搭配 git commit -a 來做commit的動作可以避免資料雜亂與龐大~...

2013年9月25日 星期三

git 自己建立一個新的 Repository

step1. 到你要存取的資料夾下 git init 這時你就會看到 Git 告訴你說已經在這邊建立好一個新的 Git Repository。 Clone(複製)別人的 Repository 將他複製起來後到你的目錄下輸入 git clone $ https://github.com/JOHNBASS/Sports-stars.git 如此便會將這個 Git Repository下載到我們的資料夾, git clone 預設會將下載的 git 存成一樣檔名的資料夾,如果你要更改成別的名稱的話只需要在網址後面加上你想要更改的名稱即可,像是: $ https://github.com/JOHNBASS/Sports-stars.git test1 這樣子下載下來的 Repository 的名稱就會從原本的 Sports-stars 變成 test1 了。 參考資料:http://gogojimmy....

Git alias 的功能 縮短指令

Git 也有提供 alias 的功能 例如你可以將 git status 縮寫為 git st,git checkout 縮寫為 git co 等,你只要這樣設定 git config --global alias.st status 這樣一來只要打 git st 就等同於打 git status 了。 Git 預設輸出是沒有顏色的,我們可以讓他在輸出時加上顏色讓我們更容易閱讀: git config --global color.ui true 參考文獻:http://gogojimmy.net/2012/01/17/how-to-use-git-1-git-basi...

2013年9月11日 星期三

UITextField 設定 游標的 顏色 set color

step1. 宣告一個 UITextField *bmiTextField; 加入  bmiTextField.delegate = self; step2. 設定事件 - (void)textFieldDidEndEditing:(UITextField *)textField {       //確定text裡面有值         if(textField.layer.borderWidth)         {             textField.layer.borderWidth = 0;             textField.backgroundColor = [UIUtility greenColor];             textField.textColor...

2013年9月5日 星期四

UITextField 後面加入小x 清除 輸入 資料 / 清除的事件

step1.  UITextField *endTextField; endTextField = [[UITextField alloc] initWithFrame:CGRectMake(10, 50, 300, 30)];     [contentBaseView addSubview:endTextField]; endTextField.delegate = self;      endTextField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;      //加入後面的小xx endTextField.clearButtonMode = UITextFieldViewModeWhileEditing; step2. //這是textfield 清除的事件 -(BOOL)textFieldShouldClear:(UITextField *)textField {  ...

NSUserDefaults Save/Read/Clear 儲存/讀取/清除

step1. // 定義名稱 define key #define kIsActive @"isActive" #define kUserName @"userName" step2. // 讀取資料 -(void)loadInfo { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSLog(@"Name : %@", [defaults stringForKey:kUserName]); NSLog(@"isActive : %@", ([defaults boolForKey:kIsActive] ? @"YES" : @"NO")); } step3.  // 儲存資料 -(void)saveInfo { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *userName = @"Hank"; BOOL isActive = YES; [defaults...

2013年8月28日 星期三

mac 開發 android 安裝 IDE

step1 下載ADT Bundlehttp://developer.android.com/sdk/index.html step2 啟動Eclipse step3 升級套件 如果遇到要求升級的錯誤訊息,可從Android SDK Manager升級套件  step4 可從Window -> Android SDK Manager 打開Android SDK Manager 視窗 參考http://apphook.blogspot.tw/2013/08/adt-bundle.ht...

Mac 辨別 32it or 64bit

開terminal輸入uname -a, 出現i386事串就是32,x86_64就是64位元...

2013年8月20日 星期二

Phonegap LocalNotification 本地推播 Android

step1. 請先請到以下的網址 下載 phonegap-plugins https://github.com/phonegap/phonegap-plugins/tree/master/Android/LocalNotification step2. 複製LocalNotification.js 到你的 www資料夾內 並且在index.html 中把他加入進去 <script type="text/javascript" charset="utf-8" src="js/LocalNotification.js"></script> step3. 創造一個 package  命名為com.phonegap.plugin.localnotification 將 AlarmHelper AlarmOptions AlarmReceiver AlarmRestoreOnBoot LocalNotification 以上的java檔加入 step4. 到AlarmReceiver 來修改錯誤 將R檔選擇到你自己目前的drawable.ic_launcher final Notification notification = new...