發表文章

Kotlin在Fragment要如何使用getActivity()

當我們在Fragment要取得所依附的Activity時,在Java的寫法我們可以用getActivity() 但是在Kotlin卻找不到getActivity()了 其實只要把本來習慣的getActivity()改成: activity 就可以了

Git 如何刪除已被加入追蹤的檔案 how to delete file from git repo

圖片
在使用Android Studio開發的過程, 如果在一開始忘了把專案會自動產生/變動的檔案加入gitignore裡就push上去了 例如.idea/misc.xml 事後就算再把那個檔案加入gitignore還是會被追蹤到變動 就會造成每次隊友把code pull下來,就會有個變動過的檔案在uncommit change提醒你 而且這個跟程式碼一點關係都沒有呀,實在滿煩惱的 解決的方法是 使用git rm指令 git rm --cached .idea/misc.xml 在輸入完指令之後會顯示被rm掉的檔案 之後再push上去之後,這個被加入到repo的檔案不會再出現了 Reference: https://stackoverflow.com/questions/2047465/how-can-i-delete-a-file-from-git-repo

Git 如何在Commit時加入樣板template的機制

這個使用的情境是,當團隊有制式的Commit log需要遵守時,使用Commit template的機制,可以確保大家commit出去的log訊息好閱讀、追蹤issue。而針對個人也可以在 commit送出之前多一道程序看到自己送出前的log訊息。 先建立一個要來做為template的檔案,使用touch去新增,假設建立一個名為「.gitmessage.txt」的文字建來做為template touch ~/.gitmessage.txt 建立之後再把template指令加入 git config commit.template ~/.gitmessage.txt 然後再用vi去寫入該template檔案 vi .gitmessage.txt 然後加入自訂內容的範本文字,假設每次commit都要加上issue no以及相關說明: Ticket-No. Comment: 再用「:wq」存檔離開 之後只要都使用「git commit」的指令,就會自動進入template內容,然後修改template內容之後「:wq」存檔離開就會自動寫入commit log了 Reference: https://git-scm.com/book/zh-tw/v1/Git-客製化-Git-設定 https://stackoverflow.com/questions/21998728/how-to-specify-a-git-commit-message-template-for-a-repository-in-a-file-at-a-rel

Fresco圓型圖片失效 Fresco roundascircle not working

Fresco 要顯示圓型的圖片只要加上 fresco:roundAsCircle="true" 但有時候會很奇怪的突然就失效,還是一樣顯示為方型的圖片 原因是Android Studio自動加入的XML namespace錯誤所造成的 解決方法: 將Layout xml最上方原本的namespace xmlns:fresco="http://schemas.android.com/tools" 修改為 xmlns:fresco="http://schemas.android.com/apk/res-auto" reference:  https://github.com/facebook/fresco/issues/1023

如何解決git clone下來只有Master branch

圖片
在專案的開發過程,我們會在本地端新增了不同的branch,而且將本地端的一些適合上傳到Git Server(例如:Github、Bitbucket)的branch push上去。 但下次從Git Server使用git clone將整份專案重新下載時,就會發現本地端只有一個Master branch而沒有其他遠端上的branch。 這個時候查看所有的branch git branch -v -a 會發現有些在遠端的branch在本地端沒有出現 解決的方法: 假設你想把遠端上的develop branch加入本地端並且立刻切換過去該branch,則可以使用下列的指令 git checkout --track origin/develop 此時就可以看到本地端已經出現了遠端存在的develop branch了 Reference: http://stackoverflow.com/questions/9537392/git-fetch-remote-branch

Unity在升級Android SDK Tools之後Build apk失敗(After upgrade Android Studio SDK Tools, Unity build apk failed)

圖片
Android Studio內建了SDK Manager來檢查更新的功能,除了可以下載不同版本的SDK之外,另外還有SDK Build-Tools、SDK Platform-Tools,以及SDK Tools也都有提供檢查與升級的功能。 如果你將Android SDK Tools升級到最新的版本時,雖然在Android開發上可以build成功,但如果剛好你的Android SDK也同時是用來開發Unity時,有時候就有可能會發生Unity無法Build apk的情形。 錯誤訊息 Error building Player: CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details. /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/ukyo/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/PlaybackEngines/AndroidPlayer/Tools/sdktools.jar" 解決的方法: 下載tools為25.2.3的版本,解壓縮後,覆蓋掉在SDK目錄下的tools即可 Windows: https://dl.google.com/android/repository/tools_r25.2.3-windows.zip Mac OSX: https://dl.google.com/android/repository/tools_r25.2.3-macosx.zip Linux: https://dl.google.com/android/repository/tools_r25.2.3-linux.zip 可以看到覆蓋之後,Android SDK Tools...

如何製作客制化Appbar

圖片
Android上方工具列的名字,從ActionBar改名為Toolbar之後,又再加入新的定義名稱Appbar。所以這邊就使用最新的名稱為Appbar。 由於Android的設計規範是將Appbar的文字標題或icon偏左,但又常常會遇到美術設計出的圖是將文字標題或icon置中,這個時候就只能自行客制了。 一、使用NoToolBar的style <style name="NewAppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/toolbar_background_gray</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> 二、自行建立Toolbar, 將圖片置中 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:minHeight="?attr/actionBarSize" android:layout_width="match_parent" android:layout_height="wrap_content" app:titleTextColor="@android:color/white" android:background="?attr/colorPrimary"> <ImageVie...