原创 Android FrameLayout的:layout_marginTop屬性失效的問題

在Android3.0以下的平臺上,FrameLayout內部的LinearLayout控件設置android:layout_marginTop屬性是沒有效果的,而ImageView控件設置android:layout_marginTop

原创 源碼分析Fragmentd的BackStack管理過程

1. Fragment基本用法 爲了管理Activity中的fragments,需要調用Activity中的getFragmentManager()方法。因爲FragmentManager的API是在Android 3.0,也即API l

原创 AndroidManifest詳解之Application(有圖更好懂)

能夠包含的標籤:    <activity>    <activity-alias>    <service>    <receiver>    <

原创 Android自定義View的用法總結

本文參考了:http://greenrobot.me/devpost/android-custom-layout/ Android SDK中提供了很多UI組件,如RelativeLayout, LinearLayout等,使用自定義控件有

原创 Java泛型類型參數的界限

作用 1. 限制類型參數的類型 如要定義一個類IntegerPair來存取元素類型爲Integer的對偶,此類可寫成如下的形式: public class IntegerPair<T extends Integer> { publi

原创 深入理解Java Annotation

引言 本文將從class文件的角度來探索Annotation的相關知識,爲理解JVM是如何處理Annotation打下基礎. class文件中的Annotation 假設有一個Annotation: @Target(ElementType

原创 JDK中ArrayList、HashMap和HashSet的equals方法源碼分析

    最近遇到個坑,在分別對ArrayList、HashMap等數據類型進行比較時,發現數據一樣,但equals一直返回false。於是乎看了一下ArrayList和HashMap的源碼,才恍然大悟。本文的代碼摘自JDK 1.7.0。

原创 Java泛型類的繼承關係

引言 類型兼容的對象可以進行賦值,如可將一個 Integer 對象傳給一個 Object 對象,因爲 Object 是 Integer 的基類。 Object someObject = new Object(); Integer some

原创 自己動手寫編譯器之TINY編譯器詞法分析

  TINY是《編譯原理與實踐》一書中介紹的教學編程語言,該語言缺少真正程序設計語言的主要特徵,但足以例證編譯器的主要特徵了。本文將介紹該編譯器的實現過程,完整的實現代碼loucomp_linux中,供編譯原理初學者參考。 小試牛刀:下載

原创 Android開發資源文件用法小結

本文用來記錄在Android開發中經常用到的一些用法 arrays.xml定義數組 例: <resources> <!-- share items --> <string-array name="app_share_

原创 calabash-android 命令行使用

    本文介紹calabash-android的命令行的使用,通過例子,熟悉calabash-android所調用的ruby api和常用控制檯命令, 如query, touch, wait等。,。熟悉這些API有助於我們編寫自定義fe

原创 XmlPullParser 解析不到END_DOCUMENT,XmlPullParserException: Unexpected token (position:TEXT

最近遇到一個坑,我在網上找了一段代碼來解析XML,片段如下: int eventType = xpp.getEventType(); while (eventType != XmlPullParser.

原创 實例講解EventBus for Android

簡介 EventBus是一個很棒的事件訂閱與發佈的框架,項目地址:https://github.com/greenrobot/EventBus。 作用 Android各個組件間的以接口的方式進行的通信問題: 1 增加了組件間的耦合,某個

原创 Java中HashMap和SparseArray的數據結構

    最近聽同事說使用SparseArray代替HashMap可以提高性能,於是邊對這兩個類的數據結構進行簡單的分析。 Hashmap的數據結構  Hashmap是一個數組和鏈表的結合體(在數據結構稱“鏈表散列“),如下圖示: 圖片來

原创 Calabash-Android用法入門

上文介紹瞭如何在windows中安裝calabash-android的測試環境,本文用一個實例來介紹calabash-android的基本用法。 本文所用的源代位於:https://github.com/bigconvience/Hac