RemoteViews佈局和類型限制源碼分析

一、官方文檔

二、類的定義

三、RemoteView註解

        在RemoteViews源碼中聲明瞭如下註解:

        從註解類型來看爲運行時註解,作用於類或接口,結合註釋可知此註解用於View的子類,用來標識該View是否可以作爲遠程視圖使用。由此可以推斷出,並非所有View都可以作爲遠程視圖,只有聲明瞭RemoteView註解的View纔可以。

        例舉幾個源碼中的定義:

四、Filter接口

       從註釋中不難看出,Filter類是用來限制和過濾View的。上文提到並非所有的View都能用作遠程視圖,如果爲上述列舉的View,則onLoadClass(Class clazz)返回true,否則返回false。

        在RemoteViews中,Filter接口方法的實現:

        若onLoadClass(Class clazz)返回false,則拋出以下異常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章