Android App支援多種不同螢幕規格的方式 2014 年 9 月 2 日 Magic Len 研究分享、 Android 使用Android系統的手機或是平板電腦非常多種,而這些裝置的螢幕尺寸、解析度和密度也都不太相同,因此在開發Android程式時必須考慮到使用者所使用的螢幕規格,並針對這些規格來設計出不同的版面,讓程式可以在各種不同的裝置下順利執行與使用。 繼續閱讀
Android DrawingCache超詳細解析,解決getDrawingCache方法回傳null 2014 年 8 月 27 日 Magic Len 研究分享、 Android 開發Android的時候,在許多情況下會使用到View的getDrawingCache方法來取得View目前顯示出來的樣子(DrawingCache),雖然算是一個還蠻方便的方法,但是這個方法卻有著許多的缺陷,它不但效能極差,內部實作方式和回傳的結果隨著Android API版本不同還有很大的差異。最嚴重的一點是,getDrawingCache常常會請你吃null。在這篇文章中,將會探討為什麼ge... 繼續閱讀
進入含有EditText的Activity時,不自動彈出虛擬鍵盤 2014 年 8 月 7 日 Magic Len Android 在Android的Activity放置EditText之後,如果沒有做特別的調整,每次一進入Activity,EditText都會自動取得焦點,然後彈出虛擬鍵盤,造成畫面變得擁擠。雖然Android這樣的設計是為了減少使用者點擊螢幕的次數,但是並不是在所有情況下一進入Activity都需要自動彈出虛擬鍵盤,使用者可能只是要看資料而已(例如看聊天訊息)。 繼續閱讀
在Android實作HTML TextView與AutoLink使用的建議方式 2014 年 8 月 6 日 Magic Len 研究分享、 Android Android的TextView除了可以用來顯示文字資料之外,還可以使用HTML語法來調整文字的樣式和文字超連結,無需特地去使用WebView。只是一旦使用TextView製作超連結,該TextView就會變得難以控制,因此有幾個特性應該是設計師必須事先知道的。 繼續閱讀
Android BaseAdapter提升效能的建議實作方式 2014 年 7 月 30 日 Magic Len 研究分享、 Android BaseAdapter為自訂ListView、GridView和Spinner版面時,常需要實作的接合器(Adapter)。實作BaseAdapter時必須要謹慎小心,否則將會大大影響到執行效能,可以參考本篇文章提供的方式,來實作出效能不錯的BaseAdapter。 繼續閱讀
Android 反編譯與防止被反編譯 2014 年 5 月 24 日 Magic Len 研究分享、 Android Android App使用Java語言進行開發,因此十分容易就可以被反編譯出近乎原始的程式碼。也因為這個特性,許多人在寫Android App的時候會喜歡去反編譯別人寫好的程式,再挪為己用,雖然很不道德,但這也是一種有效提升軟體開發速度的方法。但換個角度想,如果是自己寫的程式碼被盜走的話,這就對自己不太有利了,所以學習如何防止自己程式碼被偷也是一個很重要的課題。 繼續閱讀
String Hider 隱藏任意的字串 2014 年 5 月 3 日 Magic Len 作品分享、 軟體介紹、 Java 在傳遞資料的過程中,總是不想要讓人家一眼就看明白你所傳遞的文字訊息。隱藏文字訊息的方式有很多種,如果沒有解碼還原的需求,只需進行雜湊(Hash)運算即可。但若有還原的需求,則可能要使用到某些著名的加密演算法,例如DES、AES等等,但這些演算法又很複雜,需要加解密鑰又需要初始向量,還有一堆不同的長度,若兩方沒有事先講好如何加解密,那要還原出原本的字串是很困難的。如果只是想要隱藏一些不太想讓別人一眼... 繼續閱讀
JD-GUI 反編譯Java程式的利器 2014 年 4 月 27 日 Magic Len 軟體介紹、 Java Java程式碼在編譯(Compile)之後並不會產生出可直接被機器執行的機器碼(Machine Code),因為Java程式是透過Java虛擬機(Java Virtual Machine, JVM)執行的,所以Java程式碼在編譯時會把程式編譯成JVM看得懂的Java bytecode。Java bytecode的格式類似組合語言,由於形式非常固定,因此很容易就可以被反編譯(Decompile)回... 繼續閱讀
JavaFX 學習之路-第六章:動畫 2014 年 4 月 5 日 Magic Len 研究分享、 Java 要說JavaFX跟Swing外觀上最大的改變就是JavaFX多了動畫(Animation)的支援。JavaFX的動畫加入了「關鍵影格(Key Frame)」的概念,因此要同時控制多個不同的元件進行動畫,可以輕易地做到! 繼續閱讀
MagicSort─支援非同步排序與計算排序進度的Java排序函式庫 2014 年 4 月 5 日 Magic Len Java Java內建的排序方法無法在非同步執行緒下進行工作,因為沒有Callback的機制,如果將排序工作丟給另外一個執行緒執行的話,會不知道排序程式究竟何時會跑完。寫程式的時候,有時必須排序龐大的資料,如果未將排序單獨丟給另一個執行緒的話,會造成程式停頓,又因Java內建的排序方法,會使用到遞迴,在資料量大的時候,會用到很多Stack(堆疊)空間,有可能會導致Stack Overflow。所以為了解決J... 繼續閱讀