一、Android:windowBackground屬性簡介
Android:windowBackground是一個用於指定Activity背景的屬性,可以通過在Activity的theme中添加屬性值來設置。
該屬性接受一個Drawable對象作為值,可以是顏色、圖片、GradientDrawable等,同時支持selector作為值。
在設置背景圖片時,除了使用固定路徑指向資源文件外,在代碼中也可以通過動態生成Drawable對象來設置。
二、通過資源文件設置背景圖片
Android支持通過layout文件和style文件來對Activity的背景圖片進行設置。
1.在layout文件中設置
<LinearLayout ... android:background="@drawable/my_bg" ... />
2.在style文件中設置
<style name="MyTheme" parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowBackground">@drawable/my_bg</item> </style>
三、通過Drawable對象設置背景圖片
可以通過代碼將Drawable對象設置為Activity的背景,這是一個非常靈活的方式,可以直接在代碼中生成需要的背景。比如,根據屏幕大小生成背景等。
class MyActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val drawable = GradientDrawable() drawable.setColor(Color.RED) window.decorView.background = drawable } }
四、總結
Android:windowBackground屬性是設置Activity背景圖片的一種方式,可以通過資源文件或者通過代碼動態生成生成Drawable對象來設置,可以根據實際需要選擇合適的方式。
通過Drawable對象設置背景圖片的方式非常靈活,可以根據需求生成合適的Drawable。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/254054.html