Kongzue Dialog V3 現(xiàn)已開放測(cè)試

Kongzue Dialog V3

獻(xiàn)給要求安卓照著蘋果設(shè)計(jì)稿做開發(fā)的產(chǎn)品們(手動(dòng)滑稽

Github

https://github.com/kongzue/DialogV3

Kongzue Dialog V3

Kongzue Dialog V3 的優(yōu)勢(shì)

1,不會(huì)發(fā)生 WindowLeaked 錯(cuò)誤

一般情況下直接創(chuàng)建的 Dialog 或 AlertDialog 啟動(dòng)后漆魔,一旦其依賴的 Activity 優(yōu)先于 Dialog 關(guān)閉凤薛,則會(huì)拋出 android.view.WindowLeaked 錯(cuò)誤销斟。

這對(duì)于普通對(duì)話框還好處理,只需要在 Activity 的 onPause() 或 onDestroy() 中對(duì) dialog.dismiss(); 但對(duì)于可能出現(xiàn)的饿幅,諸如等待提示框、提醒框等 Dialog,很容易發(fā)生此問題捅彻。

Google 現(xiàn)已推薦使用 DialogFragment 來(lái)代替普通 Dialog 使用。

Kongzue Dialog 組件 V3 全部采用 DialogFragment 來(lái)實(shí)現(xiàn)對(duì)話框組件鞍陨,且創(chuàng)造對(duì)話框更為簡(jiǎn)單方便步淹,只需簡(jiǎn)單配置即可上手,也不會(huì)出現(xiàn) WindowLeaked 錯(cuò)誤诚撵。

2缭裆,橫豎屏切換、分屏大小切換寿烟、甚至未來(lái)的折疊屏澈驼,都沒有問題!

已知 Android 系統(tǒng)在發(fā)生橫豎屏切換筛武、分屏大小切換缝其、未來(lái)的折疊屏、窗口化等界面大小發(fā)生變化的情況時(shí)若不進(jìn)行處理一般都會(huì)銷毀當(dāng)前 Activity 重新創(chuàng)建徘六,但這會(huì)導(dǎo)致我們已經(jīng)彈出的 Dialog 也發(fā)生重啟内边。

重啟最大的麻煩在于需要對(duì)重啟后的 Dialog 進(jìn)行原狀態(tài)恢復(fù),即事件重綁定待锈,包括 Dialog 的樣式漠其、相關(guān)事件監(jiān)聽器等都需要重新設(shè)置,使用 Kongzue Dialog V3 您就不需要再擔(dān)心這些麻煩的問題炉擅,Kongzue Dialog V3 會(huì)自動(dòng)重建被銷毀的 Dialog辉懒,而無(wú)需您做任何處理。

3谍失,目前市面上最像 iOS 風(fēng)格的對(duì)話框組件

Kongzue Dialog V3 依然會(huì)像第二代一樣提供多種主題風(fēng)格選擇眶俩,且更為強(qiáng)大,iOS 風(fēng)格自帶高斯模糊讓您再也無(wú)需擔(dān)心產(chǎn)品經(jīng)理和設(shè)計(jì)師放飛自我快鱼。

功能強(qiáng)大且真正的實(shí)時(shí)高斯模糊效果讓您的程序更具逼格颠印,同時(shí)我們也比蘋果更早提供了 iOS 風(fēng)格對(duì)話框夜間模式,若您正在使用暗色的程序設(shè)計(jì)抹竹,這款與您更搭线罕!

我們的組件也會(huì)提供許許多多的接口供您自定義對(duì)話框的每一點(diǎn)細(xì)節(jié),方便而快捷窃判,迅速構(gòu)建您的程序钞楼。

4,模態(tài)化

Kongzue Dialog V3 默認(rèn)即支持模態(tài)化窗口模式袄琳,即即便從代碼一次執(zhí)行顯示多個(gè)對(duì)話框询件,實(shí)際也會(huì)再上一個(gè)對(duì)話框消失后再顯示下一個(gè)燃乍,以避免對(duì)話框疊加造成的混亂情況發(fā)生。

Demo

現(xiàn)已提供 Kongzue Dialog V3 Demo 演示程序供下載體驗(yàn): https://fir.im/DialogV3

引入

? 當(dāng)前 V3 庫(kù)處于 beta 測(cè)試階段宛琅,如果需要穩(wěn)定版本請(qǐng)前往 Kongzue Dialog V2

Maven倉(cāng)庫(kù):

<dependency>
  <groupId>com.kongzue.dialog_v3</groupId>
  <artifactId>dialog</artifactId>
  <version>2.9.9.8</version>
  <type>pom</type>
</dependency>

Gradle:
在dependencies{}中添加引用:

implementation 'com.kongzue.dialog_v3:dialog:2.9.9.8'

從 Kongzue Dialog V2 升級(jí)至 Kongzue Dialog V3刻蟹,請(qǐng)參考 Kongzue Dialog V2升級(jí)注意事項(xiàng)

配置

在完成引入 Kongzue Dialog V3 庫(kù)后,首先需要進(jìn)行一些預(yù)先配置嘿辟,諸如對(duì)話框組件整體的風(fēng)格舆瘪、主題和字體等,它們都可以在一個(gè)工具類中進(jìn)行配置红伦,說明如下:

import com.kongzue.dialog.util.DialogSettings;

DialogSettings.isUseBlur = (boolean);               //是否開啟模糊效果英古,默認(rèn)關(guān)閉
DialogSettings.style = (DialogSettings.STYLE);      //全局主題風(fēng)格,提供三種可選風(fēng)格色建,STYLE_MATERIAL, STYLE_KONGZUE, STYLE_IOS
DialogSettings.theme = (DialogSettings.THEME);      //全局明暗風(fēng)格哺呜,提供兩種可選主題舌缤,LIGHT, DARK
DialogSettings.titleTextInfo = (TextInfo);          //全局標(biāo)題文字樣式
DialogSettings.contentTextInfo = (TextInfo);        //全局正文文字樣式
DialogSettings.buttonTextInfo = (TextInfo);         //全局默認(rèn)按鈕文字樣式
DialogSettings.buttonPositiveTextInfo = (TextInfo); //全局焦點(diǎn)按鈕文字樣式(一般指確定按鈕)
DialogSettings.inputInfo = (InputInfo);             //全局輸入框文本樣式
DialogSettings.backgroundColor = (ColorInt);        //全局對(duì)話框背景顏色箕戳,值0時(shí)不生效
DialogSettings.cancelable = (boolean);              //全局對(duì)話框默認(rèn)是否可以點(diǎn)擊外圍遮罩區(qū)域或返回鍵關(guān)閉,此開關(guān)不影響提示框(TipDialog)以及等待框(TipDialog)
DialogSettings.cancelableTipDialog = (boolean);     //全局提示框及等待框(WaitDialog国撵、TipDialog)默認(rèn)是否可以關(guān)閉
DialogSettings.DEBUGMODE = (boolean);               //是否允許打印日志
DialogSettings.blurAlpha = (int);                   //開啟模糊后的透明度(0~255)

如果需要開啟模糊效果陵吸,即 DialogSettings.isUseBlur = true; 需要進(jìn)行額外 renderscript 配置,需要注意的是在部分低配置手機(jī)上此功能效率可能存在問題介牙。

在 app 的 build.gradle 中添加以下代碼:

android {
    ...
    defaultConfig {
        ...

        renderscriptTargetApi 19
        renderscriptSupportModeEnabled true
    }
}

上述配置為全局配置壮虫,即在不進(jìn)行特意定制的情況下,所有對(duì)話框組件默認(rèn)按照此配置顯示环础,如有特殊需求囚似,可以通過各對(duì)話框組件的 build(...) 方法創(chuàng)建對(duì)話框后進(jìn)行配置,最后使用 show() 方法執(zhí)行顯示即可线得。

使用

基本消息對(duì)話框

提供日常消息展示饶唤,區(qū)分為單按鈕、雙按鈕和三按鈕的效果贯钩。

消息對(duì)話框

以下范例通過參數(shù)快速創(chuàng)建一個(gè)基本的消息對(duì)話框:

MessageDialog.show(MainActivity.this, "提示", "這是一條消息", "確定");

額外的募狂,MessageDialog 還提供多種參數(shù)的構(gòu)建方法,方便快速創(chuàng)建合適的對(duì)話框:

MessageDialog.show(MainActivity.this, "提示", "這是一條雙按鈕消息", "確定", "取消");

MessageDialog.show(MainActivity.this, "提示", "這是一條三按鈕消息", "確定", "取消", "其他");

消息對(duì)話框的按鈕回調(diào)方法提供了一個(gè) return 值用于判斷點(diǎn)擊按鈕后是否需要關(guān)閉對(duì)話框角雷,默認(rèn) return false 會(huì)關(guān)閉當(dāng)前的輸入對(duì)話框祸穷,若 return true 則點(diǎn)擊該按鈕后不會(huì)關(guān)閉:

MessageDialog.show(MainActivity.this, "更多功能", "點(diǎn)擊左邊的按鈕是無(wú)法關(guān)掉此對(duì)話框的,Kongzue Dialog提供的回調(diào)函數(shù)可以輕松幫你實(shí)現(xiàn)你想要的判斷功能", "點(diǎn)我關(guān)閉", "我是關(guān)不掉的")
        .setOnCancelButtonClickListener(new OnDialogButtonClickListener() {
            @Override
            public boolean onClick(BaseDialog baseDialog, View v) {
                return true;                    //位于“取消”位置的按鈕點(diǎn)擊后無(wú)法關(guān)閉對(duì)話框
            }
        });

此功能便于做選擇判斷勺三,在合理的事件觸發(fā)后可允許關(guān)閉對(duì)話框雷滚。

也可以通過 build(...) 方法創(chuàng)建,并定制更多效果:

MessageDialog.build(MainActivity.this)
        .setStyle(DialogSettings.STYLE.STYLE_MATERIAL)
        .setTheme(DialogSettings.THEME.DARK)
        .setTitle("定制化對(duì)話框")
        .setMessage("我是內(nèi)容")
        .setOkButton("OK", new OnDialogButtonClickListener() {
            @Override
            public boolean onClick(View v) {
                Toast.makeText(MainActivity.this, "點(diǎn)擊了OK吗坚!", Toast.LENGTH_SHORT).show();
                return false;
            }
        })
        .show();

需注意的是祈远,只有修改主題風(fēng)格的 setStyle(...) 和 setTheme(...) 方法必須在使用 build(...) 創(chuàng)建時(shí)才可以修改胯舷。

一些特殊需求中可能用到需要縱向排列按鈕的三按鈕消息框,則可以通過以下方法實(shí)現(xiàn):

MessageDialog
        .show(MainActivity.this, "縱向排列", "如果你正在使用iOS風(fēng)格或Kongzue風(fēng)格绊含,這里的按鈕可以縱向排列桑嘶,以方便提供更多選擇", "還不錯(cuò)", "有點(diǎn)意思", "還有呢?")
        .setButtonOrientation(LinearLayout.VERTICAL);

輸入對(duì)話框

提供額外輸入需求的對(duì)話框組件躬充,可控制輸入內(nèi)容類型逃顶,并在點(diǎn)擊按鈕時(shí)判斷是否關(guān)閉對(duì)話框。

輸入對(duì)話框

以下范例通過參數(shù)快速創(chuàng)建一個(gè)基本的輸入對(duì)話框:

InputDialog.show(MainActivity.this, "輸入對(duì)話框", "輸入一些內(nèi)容", "確定");

InputDialog 與 MessageDialog 類似也提供多種構(gòu)建方法充甚,在此不再贅述以政。

輸入對(duì)話框的按鈕回調(diào)中會(huì)直接返回當(dāng)前輸入的文本內(nèi)容:

InputDialog.show(MainActivity.this, "提示", "請(qǐng)輸入密碼", "確定", "取消")
        .setOnOkButtonClickListener(new OnInputDialogButtonClickListener() {
            @Override
            public boolean onClick(BaseDialog baseDialog, View v, String inputStr) {
                //inputStr 即當(dāng)前輸入的文本
                return false;
            }
        })

如果需要修改輸入框的提示語(yǔ)(HintText)或內(nèi)容(InputText),可以使用以下方法:

InputDialog.show(MainActivity.this, "輸入對(duì)話框", "輸入一些內(nèi)容", "確定")
        .setInputText("123456")
        .setHintText("請(qǐng)輸入密碼")
;

如需控制輸入內(nèi)容的字號(hào)伴找、顏色盈蛮、輸入長(zhǎng)度、文本類型技矮,可以通過以下方法實(shí)現(xiàn):

InputDialog.show(MainActivity.this, "輸入對(duì)話框", "請(qǐng)輸入6位密碼", "確定")
        .setInputInfo(new InputInfo()
                              .setMAX_LENGTH(6)
                              .setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD)
                              .setTextInfo(new TextInfo()
                                                   .setFontColor(Color.RED)
                              )
        )
;

備注:TextInfo(com.kongzue.dialog.util.TextInfo)類提供了基本的文字樣式控制抖誉,InputInfo(com.kongzue.dialog.util.InputInfo)類提供了基礎(chǔ)的輸入文字類型控制。

等待和提示對(duì)話框

等待提示對(duì)話框提供居中于屏幕阻斷操作的等待和狀態(tài)提示功能衰倦。

等待和提示對(duì)話框

使用以下代碼構(gòu)建等待對(duì)話框:

WaitDialog.show(MainActivity.this, "請(qǐng)稍候...");

使用以下代碼構(gòu)建提示對(duì)話框:

TipDialog.show(MainActivity.this, "警告提示", TipDialog.TYPE.WARNING);

TipDialog 自帶三種類型的提示圖標(biāo)(TipDialog.TYPE)袒炉,可通過參數(shù)設(shè)置指定:

TipDialog.TYPE.SUCCESS                                  //對(duì)勾提示圖
TipDialog.TYPE.WARNING                                  //感嘆號(hào)提示圖
TipDialog.TYPE.ERROR                                    //錯(cuò)誤叉提示圖

也可以通過如下代碼設(shè)置自定義的圖片:

TipDialog.show(MainActivity.this, "警告提示", R.mipmap.img_tip);        //入?yún)⒆远x圖片資源文件

額外的,可以通過以下語(yǔ)句設(shè)置 TipDialog 自動(dòng)關(guān)閉的時(shí)長(zhǎng)(單位:毫秒):

TipDialog.show(MainActivity.this, "成功樊零!", TipDialog.TYPE.SUCCESS)
        .setTipTime(5000);

如果連續(xù)使用我磁,兩者會(huì)有銜接的效果。

如需手動(dòng)關(guān)閉驻襟,執(zhí)行對(duì)應(yīng)的 dismiss() 方法即可夺艰。

需要注意的是,WaitDialog 本質(zhì)上繼承自 TipDialog沉衣,它們屬于長(zhǎng)時(shí)間提示功能的組件郁副,且內(nèi)存中只會(huì)創(chuàng)建一次,不會(huì)重復(fù)創(chuàng)建直到被 dismiss() 關(guān)閉厢蒜,但因?yàn)樵摻M件使用 DialogFragment 構(gòu)建霞势,請(qǐng)勿需擔(dān)心造成 WindowLeaked 錯(cuò)誤問題。

另外注意 WaitDialog 和 TipDialog 的主題和全局主題(DialogSettings.theme)是相反的斑鸦,即對(duì)話框處于亮色模式時(shí)等待和提示對(duì)話框是暗色模式的愕贡,可以通過以下代碼自定義:

WaitDialog.show(MainActivity.this, null)
        .setTheme(DialogSettings.THEME.LIGHT);      //強(qiáng)制指定為亮色模式

底部菜單

即從屏幕底部彈出的可選擇的菜單。

底部菜單

使用以下代碼構(gòu)建底部菜單:

BottomMenu.show(MainActivity.this, new String[]{"菜單1", "菜單2", "菜單3"}, new OnMenuItemClickListener() {
    @Override
    public void onClick(String text, int index) {
        //返回參數(shù) text 即菜單名稱巷屿,index 即菜單索引
    }
});

BottomMenu 可以通過 String[] 集合創(chuàng)建固以,也可以通過 List<String> 創(chuàng)建。

要為底部菜單加上標(biāo)題,可以使用一下語(yǔ)句:

BottomMenu.show(MainActivity.this, new String[]{"菜單1", "菜單2", "菜單3"}, new OnMenuItemClickListener() {
    @Override
    public void onClick(String text, int index) {
        log("點(diǎn)擊了:" + text);
    }
})
.setTitle("這里是標(biāo)題文字");

通知

這里的通知并非系統(tǒng)通知憨琳,且不具備在您的設(shè)備通知欄中持久顯示的特性诫钓,它本質(zhì)上是通過對(duì) Toast 進(jìn)行修改實(shí)現(xiàn)的跨界面屏幕頂部提示條。

不依賴于界面顯示篙螟,也不會(huì)打斷用戶操作菌湃,可作為即時(shí)通迅 IM 類軟件跨界面消息提醒,或者用于網(wǎng)絡(luò)錯(cuò)誤狀態(tài)提示遍略。

通知

使用以下代碼快速構(gòu)建通知:

Notification.show(MainActivity.this, "提示", "提示信息");

需要加入圖標(biāo)與點(diǎn)擊惧所、關(guān)閉事件:

Notification.show(MainActivity.this, "提示", "提示信息", R.mipmap.ico_wechat).setOnNotificationClickListener(new OnNotificationClickListener() {
    @Override
    public void onClick() {
        MessageDialog.show(MainActivity.this, "提示", "點(diǎn)擊了消息");
    }
}).setOnDismissListener(new OnDismissListener() {
    @Override
    public void onDismiss() {
        log("消息溜走了");
    }
});

定制化

自定義布局

對(duì)于任意一個(gè)對(duì)話框組件,Kongzue Dialog V3 提供了自定義布局功能绪杏,您可以使用一下代碼來(lái)插入自定義布局:

//對(duì)于未實(shí)例化的布局:
MessageDialog.show(MainActivity.this, "提示", "這個(gè)窗口附帶自定義布局", "知道了")
        .setCustomView(R.layout.layout_custom, new MessageDialog.OnBindView() {
            @Override
            public void onBind(MessageDialog dialog, View v) {
                //綁定布局事件下愈,可使用v.findViewById(...)來(lái)獲取子組件
                v.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        toast("點(diǎn)擊了自定義布局");
                    }
                });
            }
        });
        
//對(duì)于已實(shí)例化的布局:
View customView;
MessageDialog.show(MainActivity.this, "提示", "這個(gè)窗口附帶自定義布局", "知道了")
        .setCustomView(customView);

目前支持自定義子布局的有:消息對(duì)話框組件(MessageDialog)、底部菜單組件(BottomDialog)蕾久、輸入框組件(InputDialog)和通知組件(Notification)

自定義對(duì)話框

Kongzue Dialog V3 提供了完全自定義對(duì)話框方便快速實(shí)現(xiàn)特殊效果的對(duì)話框樣式势似。

自定義對(duì)話框

使用以下代碼創(chuàng)建自定義對(duì)話框:

//對(duì)于未實(shí)例化的布局:
CustomDialog.show(MainActivity.this, R.layout.layout_custom_dialog, new CustomDialog.OnBindView() {
    @Override
    public void onBind(final CustomDialog dialog, View v) {
        ImageView btnOk = v.findViewById(R.id.btn_ok);
        
        btnOk.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dialog.doDismiss();
            }
        });
    }
});

//對(duì)于已實(shí)例化的布局:
View customView;
CustomDialog.show(MainActivity.this, customView, new CustomDialog.OnBindView() {
    @Override
    public void onBind(final CustomDialog dialog, View v) {
        ImageView btnOk = v.findViewById(R.id.btn_ok);
        
        btnOk.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dialog.doDismiss();
            }
        });
    }
});

一些建議

由于采用了模態(tài)化的對(duì)話框展示模式、等待提示框延時(shí)關(guān)閉以及事件重綁定等技術(shù)僧著,可能會(huì)被某些 BUG 檢測(cè)軟件定性為“內(nèi)存泄漏”的問題履因,但實(shí)際并不會(huì)引發(fā)任何崩潰和錯(cuò)誤,如有不放心可以在您的程序退出時(shí)通過以下語(yǔ)句徹底清空所有 Kongzue Dialog V3 使用的內(nèi)存句柄:

BaseDialog.unload();

開源協(xié)議

Copyright Kongzue Dialog

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

更新日志:

內(nèi)測(cè)階段霹抛。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末搓逾,一起剝皮案震驚了整個(gè)濱河市卷谈,隨后出現(xiàn)的幾起案子杯拐,更是在濱河造成了極大的恐慌,老刑警劉巖世蔗,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件端逼,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡污淋,警方通過查閱死者的電腦和手機(jī)顶滩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)寸爆,“玉大人礁鲁,你說我怎么就攤上這事×薅梗” “怎么了仅醇?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)魔种。 經(jīng)常有香客問我析二,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任叶摄,我火速辦了婚禮属韧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蛤吓。我一直安慰自己宵喂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布会傲。 她就那樣靜靜地躺著樊破,像睡著了一般。 火紅的嫁衣襯著肌膚如雪唆铐。 梳的紋絲不亂的頭發(fā)上哲戚,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音艾岂,去河邊找鬼顺少。 笑死,一個(gè)胖子當(dāng)著我的面吹牛王浴,可吹牛的內(nèi)容都是我干的脆炎。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼氓辣,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼秒裕!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起钞啸,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤几蜻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后体斩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體梭稚,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年絮吵,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了弧烤。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蹬敲,死狀恐怖暇昂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情伴嗡,我是刑警寧澤急波,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站闹究,受9級(jí)特大地震影響幔崖,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一赏寇、第九天 我趴在偏房一處隱蔽的房頂上張望吉嫩。 院中可真熱鬧,春花似錦嗅定、人聲如沸自娩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)忙迁。三九已至,卻和暖如春碎乃,著一層夾襖步出監(jiān)牢的瞬間姊扔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工梅誓, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恰梢,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓梗掰,卻偏偏與公主長(zhǎng)得像嵌言,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子及穗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

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

  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個(gè)線程摧茴,因...
    小菜c閱讀 6,401評(píng)論 0 17
  • 第4章 Bootstrap裝飾插件 JavaScript是網(wǎng)頁(yè)上事實(shí)上的腳本語(yǔ)言。流行的網(wǎng)頁(yè)功能埂陆,例如:漂亮的圖片...
    海上名月閱讀 1,623評(píng)論 5 6
  • 最近在做一個(gè)項(xiàng)目 有一個(gè)需求是要分享項(xiàng)目中的一個(gè)商品 這對(duì)于我來(lái)說簡(jiǎn)直是 so easy (項(xiàng)目是三個(gè)人一起寫的)...
    管浩然閱讀 1,267評(píng)論 0 2
  • 簡(jiǎn)書投稿的攝影系列入了終審苛白,有點(diǎn)小意外,不知道是不是大概率事件呢猜惋?有一點(diǎn)小激動(dòng)呢丸氛,又忙又美,這是我接下來(lái)的人生要努...
    幺幺四閱讀 214評(píng)論 0 0
  • 只要離開家短短幾天著摔,就會(huì)開始想念家鄉(xiāng)的味道。雖然當(dāng)初念及家老定续,大學(xué)報(bào)得近谍咆,左右只有12分鐘的動(dòng)車車程,但看似并不遙...
    柚歌閱讀 617評(píng)論 0 2