什么是RemoteViews
RemoteViews 顧名思義遠(yuǎn)程View,作用就是在其他進(jìn)程中顯示并更新頁面。
RemoteViews 的應(yīng)用
1.通知欄 Notification
2.桌面小部件 AppWidgetProvider ,本質(zhì)上是一個BroadcastReceiver
3.有兩個應(yīng)用在一個應(yīng)用中要更新另一個View的頁面。
PendingIntent
表示一個在待定時刻發(fā)生Intent,它和Intent的區(qū)別就是,PendingIntent是將來的某個不確定時刻發(fā)生,而Intent是立刻發(fā)生。典型的運(yùn)用場景就是給RemoteViews添加點(diǎn)擊事件。
支持三種待定的Intent
1.啟動Activity
2.啟動Service
3.發(fā)送廣播
Drawable有很多種類,他們都表示的一種圖像的概念。
Drawable分類
BitmapDrawable
對應(yīng)<bitmap>標(biāo)簽,表示一張圖片,可以同個xml直接引用圖片即可。
ShapeDrawable
通過<shape>標(biāo)簽,可以自己繪制矩形、橢圓、圓、圓環(huán)、等,還可以設(shè)置填充的顏色,已經(jīng)描邊,以及漸變顏色等等。
StatListDrawable
對應(yīng)<selector>標(biāo)簽,主要用于button,checkbox等控件的觸摸反饋,以及選中狀態(tài)等等。
LevelListDrawable
對應(yīng)<level-list>標(biāo)簽,表示一個Drawable的集合,集合中的Drawable都有一個等級的概念,根據(jù)不同的level可以切換到對應(yīng)的level
TransitionDrawable
對應(yīng)<transition>標(biāo)簽,用于實(shí)現(xiàn)兩個Drawable見得淡入淡出效果
InsetDrawable
對應(yīng)<inset>標(biāo)簽,可以將其他drawable嵌套到自己當(dāng)中,而且在四周也可以流出間距。
ScaleDrawable
對應(yīng)<scale>標(biāo)簽,根據(jù)自己的等級,將指定的drawable縮放的一定的比例。
ClipDrawable
對應(yīng)<clip>標(biāo)簽,根據(jù)自己的等級,來裁剪另一個Drawable。
自定義Drawable
繼承Drawable重寫draw方法來自定義Drawable,自定義Drawable有一個局限性,在xml中無法使用。用處不是很廣泛。