CollapsingToolbarLayout的使用

原帖: 看工秩,這個(gè)工具欄能伸縮折疊——Android CollapsingToolbarLayout使用介紹
廢話太多了, 我拷貝過來改改當(dāng)作筆記.

一打掘、相關(guān)基礎(chǔ)屬性介紹

Android studio中有一個(gè)Activity模板叫ScrollingActivity,它實(shí)現(xiàn)的就是簡(jiǎn)單的可折疊工具欄

image

ScrollingActivity的布局代碼如下

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="@dimen/app_bar_height"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView                    
        android:layout_width="match_parent"        
        android:layout_height="match_parent"              
        app:layout_behavior="@string/appbar_scrolling_view_behavior"
        >    
    <TextView        
            android:layout_width="wrap_content"        
            android:layout_height="wrap_content"        
            android:layout_margin="@dimen/text_margin"         
            android:text="@string/large_text" />     
</android.support.v4.widget.NestedScrollView>

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/fab_margin"
    android:src="@android:drawable/ic_dialog_email"
    app:layout_anchor="@id/app_bar"
    app:layout_anchorGravity="bottom|end" />

</android.support.design.widget.CoordinatorLayout>

AppBarLayout是一種支持響應(yīng)滾動(dòng)手勢(shì)的app bar布局(比如工具欄滾出或滾入屏幕),CollapsingToolbarLayout則是專門用來實(shí)現(xiàn)子布局內(nèi)不同元素響應(yīng)滾動(dòng)細(xì)節(jié)的布局鉴竭。

與AppBarLayout組合的滾動(dòng)布局(Recyclerview、NestedScrollView等)需要設(shè)置app:layout_behavior="@string/appbar_scrolling_view_behavior"(上面代碼中NestedScrollView控件所設(shè)置的)岸浑。沒有設(shè)置的話搏存,AppBarLayout將不會(huì)響應(yīng)滾動(dòng)布局的滾動(dòng)事件。

CollapsingToolbarLayout和ScrollView一起使用會(huì)有滑動(dòng)bug矢洲,注意要使用NestedScrollView來替代ScrollView璧眠。

AppBarLayout的子布局有5種滾動(dòng)標(biāo)識(shí)(就是上面代碼CollapsingToolbarLayout中配置的app:layout_scrollFlags屬性):

  • scroll:
    將此布局和滾動(dòng)時(shí)間關(guān)聯(lián)。這個(gè)標(biāo)識(shí)要設(shè)置在其他標(biāo)識(shí)之前,沒有這個(gè)標(biāo)識(shí)則布局不會(huì)滾動(dòng)且其他標(biāo)識(shí)設(shè)置無效责静。

  • enterAlways:
    任何向下滾動(dòng)操作都會(huì)使此布局可見袁滥。這個(gè)標(biāo)識(shí)通常被稱為“快速返回”模式。

  • enterAlwaysCollapsed
    假設(shè)你定義了一個(gè)最小高度(minHeight)同時(shí)enterAlways也定義了灾螃,那么view將在到達(dá)這個(gè)最小高度的時(shí)候開始顯示题翻,并且從這個(gè)時(shí)候開始慢慢展開,當(dāng)滾動(dòng)到頂部的時(shí)候展開完腰鬼。

  • exitUntilCollapsed
    當(dāng)你定義了一個(gè)minHeight嵌赠,此布局將在滾動(dòng)到達(dá)這個(gè)最小高度的時(shí)候折疊。

  • snap:
    當(dāng)一個(gè)滾動(dòng)事件結(jié)束熄赡,如果視圖是部分可見的姜挺,那么它將被滾動(dòng)到收縮或展開。例如彼硫,如果視圖只有底部25%顯示炊豪,它將折疊。相反乌助,如果它的底部75%可見溜在,那么它將完全展開。

CollapsingToolbarLayout可以通過app:contentScrim設(shè)置折疊時(shí)工具欄布局的顏色他托,通過app:statusBarScrim設(shè)置折疊時(shí)狀態(tài)欄的顏色掖肋。默認(rèn)contentScrim是colorPrimary的色值,statusBarScrim是colorPrimaryDark的色值赏参。這個(gè)后面會(huì)用到志笼。

CollapsingToolbarLayout的子布局有3種折疊模式(Toolbar中設(shè)置的app:layout_collapseMode)

  • off
    這個(gè)是默認(rèn)屬性,布局將正常顯示把篓,沒有折疊的行為纫溃。

  • pin
    CollapsingToolbarLayout折疊后,此布局將固定在頂部韧掩。

  • parallax
    CollapsingToolbarLayout折疊時(shí)紊浩,此布局也會(huì)有視差折疊效果。

當(dāng)CollapsingToolbarLayout的子布局設(shè)置了parallax模式時(shí)疗锐,我們還可以通過app:layout_collapseParallaxMultiplier設(shè)置視差滾動(dòng)因子坊谁,值為:0~1。

FloatingActionButton這個(gè)控件通過app:layout_anchor這個(gè)設(shè)置錨定在了AppBarLayout下方滑臊。FloatingActionButton源碼中有一個(gè)Behavior方法口芍,當(dāng)AppBarLayout收縮時(shí),F(xiàn)loatingActionButton就會(huì)跟著做出相應(yīng)變化雇卷。

二鬓椭、模仿bilibili客戶端視頻詳情頁

我們先對(duì)原界面分析一下颠猴。

image

界面初始,CollapsingToolbarLayout是展開狀態(tài)小染,顯示的是視頻封面翘瓮。我們向上滾動(dòng)界面,CollapsingToolbarLayout收縮氧映。當(dāng)AppBarLayout完全折疊的時(shí)候視頻av號(hào)隱藏春畔,顯示出來一個(gè)小電視圖標(biāo)和“立即播放”,點(diǎn)擊則使AppBarLayout完全展開岛都,CollapsingToolbarLayout子布局由ImageView切換為視頻彈幕播放器律姨。

來我們先看修改完成的布局。

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="@dimen/app_bar_height"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:contentScrim="?attr/colorPrimary"
        app:statusBarScrim="@android:color/transparent"
        app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">

        <!--封面圖片-->
        <ImageView
            android:id="@+id/imageview"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            android:src="@drawable/diqiu"
            app:layout_collapseMode="parallax"
            app:layout_collapseParallaxMultiplier="0.7"
            android:fitsSystemWindows="true"/>

        <!--視頻及彈幕控件-->
        <FrameLayout
            android:id="@+id/video_danmu"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_collapseMode="parallax"
            app:layout_collapseParallaxMultiplier="0.7"
            android:fitsSystemWindows="true"
            android:visibility="gone">
            <VideoView
                android:id="@+id/videoview"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />

            <!--嗶哩嗶哩開源的彈幕控件-->
            <master.flame.danmaku.ui.widget.DanmakuView
                android:id="@+id/danmaku"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />
        </FrameLayout>

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/AppTheme.PopupOverlay" >

            <!--自定義帶圖片的立即播放按鈕-->
            <android.support.v7.widget.ButtonBarLayout
                android:id="@+id/playButton"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:gravity="center"
                android:visibility="gone">
                <ImageView
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent"
                    android:layout_gravity="center_horizontal"
                    android:src="@mipmap/ic_play_circle_filled_white_48dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="#ffffff"
                    android:text="立即播放"
                    android:layout_gravity="center_vertical"
                   />
            </android.support.v7.widget.ButtonBarLayout>

        </android.support.v7.widget.Toolbar>
    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_scrolling" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/fab_margin"
    android:src="@mipmap/ic_play_circle_filled_white_48dp"
    app:layout_anchor="@id/app_bar"
    app:layout_anchorGravity="bottom|end" />

</android.support.design.widget.CoordinatorLayout>

我把colorPrimary的色值修改成了B站的“少女粉”臼疫,播放的圖標(biāo)是從網(wǎng)上找的择份。

<color name="colorPrimary">#FA7199</color>

因?yàn)槲覀円獙?shí)現(xiàn)沉浸式狀態(tài)欄,所以就需要先把整個(gè)activity設(shè)置成狀態(tài)欄透明模式烫堤。然后在布局文件中荣赶,把CollapsingToolbarLayout里要實(shí)現(xiàn)沉浸式的控件設(shè)置上android:fitsSystemWindows="true",如果沒有設(shè)置鸽斟,則子布局會(huì)位于狀態(tài)欄下方拔创,未延伸至狀態(tài)欄。

布局并不算復(fù)雜富蓄,接下來先實(shí)現(xiàn)無彈幕播放時(shí)的功能,剩燥。

我們需要監(jiān)聽CollapsingToolbarLayout的折疊、展開狀態(tài)立倍。唉我去灭红,官方并沒有提供現(xiàn)成的方法(⊙_⊙?)口注。

查看源碼变擒,可以看到CollapsingToolbarLayout是通過實(shí)現(xiàn)AppBarLayout的OnOffsetChangedListener接口,根據(jù)AppBarLayout的偏移來實(shí)現(xiàn)子布局和title的視差移動(dòng)以及ContentScrim和StatusBarScrim的顯示寝志。那么我們也可以通過調(diào)用AppBarLayout的addOnOffsetChangedListener方法監(jiān)聽AppBarLayout的位移娇斑,判斷CollapsingToolbarLayout的狀態(tài)。

先寫一個(gè)枚舉定義出CollapsingToolbarLayout展開材部、折疊悠菜、中間,這三種狀態(tài)败富。

 private CollapsingToolbarLayoutState state;

 private enum CollapsingToolbarLayoutState {
    EXPANDED,
    COLLAPSED,
    INTERNEDIATE
}

接下來對(duì)AppBarLayout進(jìn)行監(jiān)聽,判斷CollapsingToolbarLayout的狀態(tài)并實(shí)現(xiàn)相應(yīng)的邏輯摩窃。

為了讓大家對(duì)狀態(tài)看著更直觀兽叮,我在修改狀態(tài)值的時(shí)候把title一起進(jìn)行了修改芬骄。

使用CollapsingToolbarLayout的時(shí)候要注意,在完成CollapsingToolbarLayout設(shè)置之后再調(diào)用Toolbar的setTitle()等方法將沒有效果鹦聪,我們需要改為調(diào)用CollapsingToolbarLayout的setTitle()等方法來對(duì)工具欄進(jìn)行修改账阻。(具體原因各位親去看下CollapsingToolbarLayout源碼就知道了 ( ˙-˙ ) )

AppBarLayout  app_bar=(AppBarLayout)findViewById(R.id.app_bar);
    app_bar.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() {
        @Override
        public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) {

            if (verticalOffset == 0) {
                if (state != CollapsingToolbarLayoutState.EXPANDED) {
                    state = CollapsingToolbarLayoutState.EXPANDED;//修改狀態(tài)標(biāo)記為展開
                    collapsingToolbarLayout.setTitle("EXPANDED");//設(shè)置title為EXPANDED
                }
            } else if (Math.abs(verticalOffset) >= appBarLayout.getTotalScrollRange()) {
                if (state != CollapsingToolbarLayoutState.COLLAPSED) {
                    collapsingToolbarLayout.setTitle("");//設(shè)置title不顯示
                    playButton.setVisibility(View.VISIBLE);//隱藏播放按鈕
                    state = CollapsingToolbarLayoutState.COLLAPSED;//修改狀態(tài)標(biāo)記為折疊
                }
            } else {
                if (state != CollapsingToolbarLayoutState.INTERNEDIATE) {
                    if(state == CollapsingToolbarLayoutState.COLLAPSED){
                        playButton.setVisibility(View.GONE);//由折疊變?yōu)橹虚g狀態(tài)時(shí)隱藏播放按鈕
                    }
                    collapsingToolbarLayout.setTitle("INTERNEDIATE");//設(shè)置title為INTERNEDIATE
                    state = CollapsingToolbarLayoutState.INTERNEDIATE;//修改狀態(tài)標(biāo)記為中間
                }
            }
        }
    });


然后對(duì)播放按鈕設(shè)置監(jiān)聽泽本,點(diǎn)擊則調(diào)用AppBarLayout的setExpanded(true)方法使工具欄展開淘太。

image

CollapsingToolbarLayout狀態(tài)監(jiān)聽演示.gif

嗶哩嗶哩客戶端的title是固定不動(dòng)的,可以調(diào)用CollapsingToolbarLayout的setTitleEnabled(false)方法實(shí)現(xiàn)规丽。

視頻播放時(shí)蒲牧,調(diào)用 NestedScrollView的setNestedScrollingEnabled(false)方法可以使AppBarLayout不響應(yīng)滾動(dòng)事件。

細(xì)心的朋友可能發(fā)現(xiàn)了嗶哩嗶哩客戶端為了避免視頻封面圖片顏色過淺影響狀態(tài)欄信息的顯示赌莺,加了一個(gè)漸變的不透明層冰抢。

實(shí)現(xiàn)漸變遮罩層很簡(jiǎn)單。先在res/drawable文件夾下新建了一個(gè)名為gradient的xml文件艘狭,其中代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">

    <gradient
        android:startColor="#33000000"
        android:endColor="#00000000"
        android:angle="270" />

</shape>

shape節(jié)點(diǎn)中挎扰,可以通過android:shape來設(shè)置形狀,默認(rèn)是矩形巢音。
gradient節(jié)點(diǎn)中angle的值270是從上到下遵倦,0是從左到右,90是從下到上官撼。
起始顏色#33000000是20%不透明度的黑色梧躺,#00000000表示全透明。

然后在CollapsingToolbarLayout里的ImageView代碼下面加上一個(gè)自定義view歧寺,背景設(shè)置為上面的漸變效果燥狰。

<View
   android:layout_width="match_parent"
   android:layout_height="40dp"
   android:background="@drawable/gradient"
   android:fitsSystemWindows="true"
/>

一般狀態(tài)欄的高度大概在20dp左右,我為了讓漸變效果比較自然斜筐,并且不過多影響圖(mei)片(zi),把高度設(shè)置成了40dp龙致。(狀態(tài)欄能看清了,妹子臉也沒黑顷链,挺好 (?? . ??)∧看)

image

有無漸變遮罩層的對(duì)比

三.CollapsingToolbarLayout與TabLayout

CollapsingToolbarLayout與TabLayout組合使用的效果也不錯(cuò)。

image

CollapsingToolbarLayout與TabLayout.gif

來看下CollapsingToolbarLayout里的代碼

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="250dp"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:titleEnabled="false"
        android:fitsSystemWindows="true"
        app:contentScrim="@color/colorPrimary"
        app:statusBarScrim="@android:color/transparent"
        app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
        <ImageView
            android:id="@+id/imageview"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            android:adjustViewBounds="true"
            app:layout_collapseMode="parallax"
            app:layout_collapseParallaxMultiplier="0.7"
            android:fitsSystemWindows="true"
            android:src="@drawable/girl2"/>
        <View
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:background="@drawable/gradient"
            android:fitsSystemWindows="true" />
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="96dp"
            android:minHeight="?attr/actionBarSize"
            android:gravity="top"
            app:layout_collapseMode="pin"
            app:title="hello"
            app:popupTheme="@style/AppTheme.PopupOverlay"
            app:titleMarginTop="15dp"
            />
        <android.support.design.widget.TabLayout
            android:id="@+id/tablayout"
            android:layout_width="match_parent"
            android:layout_height="45dp"
            android:layout_gravity="bottom" />
    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>


<android.support.v4.view.ViewPager
    android:id="@+id/viewpage"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:layout_behavior="@string/appbar_scrolling_view_behavior">
</android.support.v4.view.ViewPager>

  </android.support.design.widget.CoordinatorLayout>

TabLayout沒有設(shè)置app:layout_collapseMode嗤练,在CollapsingToolbarLayout收縮時(shí)就不會(huì)消失榛了。

CollapsingToolbarLayout收縮時(shí)的高度是Toolbar的高度,所以我們需要把Toolbar的高度增加煞抬,給TabLayout留出位置霜大,這樣收縮后TabLayout就不會(huì)和Toolbar重疊。

Toolbar的高度增加革答,title會(huì)相應(yīng)下移战坤。android:gravity="top"方法使Toolbar的title位于Toolbar的上方曙强,然后通過app:titleMarginTop調(diào)整下title距頂部高度,這樣Toolbar就和原來顯示的一樣了途茫。

CollapsingToolbarLayout還可以和Palette搭配使用碟嘴,但是我感覺在實(shí)際使用中有些坑,因?yàn)镃ollapsingToolbarLayout中的圖片不確定囊卜,Palette從圖片中獲取到的色彩很可能不是你想要的娜扇。

感興趣的朋友可以自己查下Palette的用法。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末栅组,一起剝皮案震驚了整個(gè)濱河市雀瓢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌笑窜,老刑警劉巖致燥,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異排截,居然都是意外死亡嫌蚤,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門断傲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來脱吱,“玉大人,你說我怎么就攤上這事认罩∠潋穑” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵垦垂,是天一觀的道長宦搬。 經(jīng)常有香客問我,道長劫拗,這世上最難降的妖魔是什么间校? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮页慷,結(jié)果婚禮上憔足,老公的妹妹穿的比我還像新娘。我一直安慰自己酒繁,他們只是感情好滓彰,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著州袒,像睡著了一般揭绑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上郎哭,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天洗做,我揣著相機(jī)與錄音弓叛,去河邊找鬼。 笑死诚纸,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的陈惰。 我是一名探鬼主播畦徘,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼抬闯!你這毒婦竟也來了井辆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤溶握,失蹤者是張志新(化名)和其女友劉穎杯缺,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體睡榆,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡萍肆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了胀屿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片塘揣。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖宿崭,靈堂內(nèi)的尸體忽然破棺而出亲铡,到底是詐尸還是另有隱情,我是刑警寧澤葡兑,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布奖蔓,位于F島的核電站,受9級(jí)特大地震影響讹堤,放射性物質(zhì)發(fā)生泄漏吆鹤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一蜕劝、第九天 我趴在偏房一處隱蔽的房頂上張望檀头。 院中可真熱鬧,春花似錦岖沛、人聲如沸暑始。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽较坛。三九已至,卻和暖如春搞疗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背配椭。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留雹姊,地道東北人股缸。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像吱雏,于是被迫代替她去往敵國和親敦姻。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容