亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

ViewStub的使用

missonce / 2266人閱讀

摘要:今天寫(xiě)一下內(nèi)容很簡(jiǎn)單是一個(gè)不可見(jiàn)的,沒(méi)有尺寸,不會(huì)繪制任何東西的布局。在加載完成后就會(huì)被移除,它所占用的空間就會(huì)被新的布局替換。還是來(lái)說(shuō)一下具體的用法,比較清晰。一旦調(diào)用上面的方法后就會(huì)變成了。

今天寫(xiě)一下 ViewStub ,內(nèi)容很簡(jiǎn)單!

ViewStub 是一個(gè)不可見(jiàn)的,沒(méi)有尺寸,不會(huì)繪制任何東西的布局。主要用于實(shí)現(xiàn) View 的延遲加載,可以避免浪費(fèi)資源,減少布局的繪畫(huà),只有需要的時(shí)候才會(huì)加載。

在 ViewStub 加載完成后就會(huì)被移除,它所占用的空間就會(huì)被新的布局替換。還是來(lái)說(shuō)一下具體的用法,比較清晰。

用法

// 在布局文件中,你就當(dāng)做普通 View 使用即可
<");xml version="1.0" encoding="utf-8"");
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorAccent"
    android:orientation="vertical">
    <TextView
        android:id="@+id/tv"
        android:textColor="@android:color/white"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="內(nèi)容區(qū)域"/>

    <ViewStub
        android:id="@+id/vs"
        android:layout_width="match_parent"
        android:layout_height="300dp"
              // 當(dāng) ViewStub 加載后,就會(huì)被下面這個(gè)布局占用
        android:layout="@layout/activity_main"/>

LinearLayout>

加載 ViewStub 的時(shí)候可以使用方法:

findViewById(R.id.vs).setVisibility(View.VISIBLE);
或者
View view = (findViewById(R.id.vs).inflate());

注意,如果你不調(diào)用上面的方法的話,ViewStub 是不會(huì)被加載的,包括 layout 屬性中的布局,這也就是上面所說(shuō)的減少資料,只有你需要了,調(diào)用上面的方法才會(huì)加載布局。一旦調(diào)用上面的方法后 ViewStub 就會(huì)變成 null 了。

應(yīng)用場(chǎng)景

頁(yè)面本身有一個(gè)布局,當(dāng)由于某些錯(cuò)誤,這個(gè)布局不加載的時(shí)候,這個(gè)時(shí)候你就可以讓 ViewStub 加載你預(yù)留的空白布局了。如果提前寫(xiě)兩套布局,根據(jù)狀態(tài)使用 VISIBILBE 來(lái)調(diào)整的話,這種是你在進(jìn)入這個(gè)頁(yè)面,布局上面所有的控件都會(huì)加載,是會(huì)浪費(fèi)資源的(有了這個(gè)空白布局一直就處于不顯示狀態(tài)的話)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/7290.html

相關(guān)文章

  • Android布局優(yōu)化:ViewStub標(biāo)簽實(shí)現(xiàn)延遲加載(源碼解析原理)

    摘要:好處官方對(duì)的解析一個(gè)不可見(jiàn)大小為的試圖下面會(huì)分析這兩點(diǎn)實(shí)現(xiàn)好處顯示優(yōu)酷視頻加載評(píng)論列表的,當(dāng)沒(méi)有數(shù)據(jù)或者網(wǎng)絡(luò)加載失敗時(shí),如果空列表的會(huì)占用資源當(dāng)有數(shù)據(jù)時(shí),才會(huì)列表的,延遲加載了布局使用步驟文件每一個(gè)必須有屬性,其中的值就是被的的可以通過(guò)這 1.ViewStub好處 ViewStub is a lightweight view with no dimension that doesn’...

    Raaabbit 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<