ViewPager的定時滾動,動態加載數據

viewpager是用在滾動中相對比較多的,最近做一個定時滾動顯示viewpager內容。

步驟:

一:在布局文件添加v4包下的viewpager:

android:id="@+id/main_viewpager"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_gravity="center">

二:獲取后臺數據,現在就暫時自己造幾條數據,并寫adapter內容

//構造list集合

list=newArrayList();

list.add(R.mipmap.image1);

list.add(R.mipmap.image2);

list.add(R.mipmap.image3);

//我這邊是顯示的viewpager的很多信息,包括圖片文字,所以構造view,在Java中寫布局代碼,

這個時候就需要我們構造view,privateListmList=new ArryList;

循化list集合數據,創建頁面詳情,通過add方法加載到mList,這樣adapter中就可以傳遞過去值了:

for(inti =0;i

rootlayout=newRelativeLayout(this);

rootlayout.setLayoutParams(newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT));

rootlayout.setId(0);

ImageView imageView =newImageView(this);

RelativeLayout.LayoutParams image_Params =newRelativeLayout.LayoutParams(

dip2px(250),dip2px(192));

image_Params.setMargins(dip2px(5),0,dip2px(5),dip2px(5));

imageView.setLayoutParams(image_Params);

imageView.setImageResource(list.get(i));

//Picasso.with(ViewPagersActivity.this).load(tsfbBeans.get(i).getBook_pic()).error(R.mipmap.image1).into(imageView);

imageView.setId(1);

//字體顏色

Resources resource = (Resources) getBaseContext().getResources();

ColorStateList csl = (ColorStateList) resource.getColorStateList(R.color.book_text);

TextView text_Name =newTextView(this);

RelativeLayout.LayoutParams text_Name_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Name_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_Name_Params.addRule(RelativeLayout.ALIGN_TOP,imageView.getId());

text_Name_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_Name.setLayoutParams(text_Name_Params);

text_Name.setText("圖書描述:");

//text_Name.setText(tsfbBeans.get(i).getBook_name() + ":");

text_Name.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_Name.setTextColor(csl);

text_Name.setId(2);

TextView text_Email =newTextView(this);

RelativeLayout.LayoutParams text_Email_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Email_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_Email_Params.addRule(RelativeLayout.BELOW,text_Name.getId());

text_Email_Params.setMargins(dip2px(10),dip2px(5),dip2px(10),0);

text_Email.setLayoutParams(text_Email_Params);

text_Email.setText("《詩經》是中國古代詩歌開端,最早的一部詩歌總集,收集了西周初年至春秋中葉(前11世紀至前6世紀)的詩歌,共311篇,其中6篇為笙詩,即只有標題,沒有內容,稱為笙詩六篇");

//text_Email.setText(tsfbBeans.get(i).getBook_description());

text_Email.setTextSize(TypedValue.COMPLEX_UNIT_SP,13);

text_Email.setId(3);

TextView text_author =newTextView(this);

RelativeLayout.LayoutParams text_author_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_author_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_author_Params.addRule(RelativeLayout.BELOW,text_Email.getId());

text_author_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_author.setLayoutParams(text_author_Params);

text_author.setText("圖書作者:");

//text_author.setText("圖書作者:" + tsfbBeans.get(i).getBook_author());

text_author.setTextColor(csl);

text_author.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_author.setId(4);

TextView text_place =newTextView(this);

RelativeLayout.LayoutParams text_place_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_place_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_place_Params.addRule(RelativeLayout.BELOW,text_author.getId());

text_place_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_place.setLayoutParams(text_place_Params);

text_place.setText("出版社:");

//text_place.setText("出版社:" + tsfbBeans.get(i).getBook_publishing());

text_place.setTextColor(csl);

text_place.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_place.setId(5);

TextView text_data =newTextView(this);

RelativeLayout.LayoutParams text_data_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_data_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_data_Params.addRule(RelativeLayout.BELOW,text_place.getId());

text_data_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_data.setLayoutParams(text_data_Params);

text_data.setText("出版日期:");

// text_data.setText("出版日期:" + tsfbBeans.get(i).getBook_publication_date());

text_data.setTextColor(csl);

text_data.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_data.setId(6);

TextView text_description_name =newTextView(this);

RelativeLayout.LayoutParams text_DescriptionName_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_DescriptionName_Params.addRule(RelativeLayout.BELOW,imageView.getId());

//text_Name_Params.addRule(RelativeLayout.ALIGN_TOP, imageView.getId());

text_DescriptionName_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_description_name.setLayoutParams(text_DescriptionName_Params);

text_description_name.setText("圖書簡介:");

text_description_name.setTextColor(csl);

text_description_name.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_description_name.setId(7);

TextView text_description =newTextView(this);

RelativeLayout.LayoutParams text_Description_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Description_Params.addRule(RelativeLayout.BELOW,text_description_name.getId());

//text_Name_Params.addRule(RelativeLayout.ALIGN_TOP, imageView.getId());

text_Description_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_description.setLayoutParams(text_Description_Params);

text_description.setText("111");

//text_description.setText(tsfbBeans.get(i).getBook_abstract());

text_description.setTextSize(TypedValue.COMPLEX_UNIT_SP,13);

text_description.setId(8);

rootlayout.addView(imageView,image_Params);

rootlayout.addView(text_Name,text_Name_Params);

rootlayout.addView(text_Email,text_Email_Params);

rootlayout.addView(text_description,text_Description_Params);

rootlayout.addView(text_author,text_author_Params);

rootlayout.addView(text_place,text_place_Params);

rootlayout.addView(text_data,text_data_Params);

rootlayout.addView(text_description_name,text_DescriptionName_Params);

//setContentView(rootlayout);

mList.add(rootlayout);

}

來講講adapter,基本寫法就行,但是注意的是在添加view的時候必須保證是一個view的parent,要不然報錯:

public classTTMyPagerAdaptersextendsPagerAdapter {

publicListlistViews=null;

publicTTestViewPagersActivitymContext;

publicTTMyPagerAdapters(List listViews,TTestViewPagersActivity mContext) {

this.listViews= listViews;

this.mContext= mContext;

Share.d("listviews"+ listViews.size());

}

@Override

public intgetCount() {

returnInteger.MAX_VALUE;

}

@Override

public booleanisViewFromObject(View arg0,Object arg1) {

returnarg0 == arg1;

}

@Override

public voiddestroyItem(View container, intposition,Object object) {

Share.d("TipsPagerAdapter,destroyItem is called? "+ position);

((ViewPager) container).removeView(listViews.get(position %listViews.size()));

}

@Override

publicCharSequencegetPageTitle(intposition) {

return super.getPageTitle(position);

}

@Override

publicObjectinstantiateItem(View container, intposition) {

Share.d("TipsPagerAdapter, instantiateItem is called "+ position);

try{

((ViewPager) container).addView(

listViews.get(position %listViews.size()),0);

}catch(Exception e) {

}

// ((ViewPager) container).addView(listViews.get(position);

// return listViews.get(position);

Share.d("instantiateItem>>>>>>"+ position %listViews.size());

returnlistViews.get(position %listViews.size());

}

}

好了現在就是直接setadapter就行了,然后寫個線程循環跳

adapter=newTTMyPagerAdapters(mList, this);

mPager.setAdapter(adapter);

mPager.setCurrentItem(position);

position是初始滑動值,凈量設置越大越好,一般滑不到頭

private voidinitAdapter() {

Share.d("mlist"+mList.size());

//

//TODO Auto-generated method stub

//TODO Auto-generated catch block

change=newThread(newRunnable() {

@Override

public voidrun() {

//TODO Auto-generated method stub

while(true) {

handler.sendEmptyMessage(0);

try{

Thread.sleep(5000);

}catch(InterruptedException e) {

//TODO Auto-generated catch block

e.printStackTrace();

}

}

}

});

change.start();

}

@SuppressLint("HandlerLeak")

privateHandlerhandler=newHandler() {

@Override

public voidhandleMessage(Message msg) {

super.handleMessage(msg);

switch(msg.what) {

case0:

position++;

mPager.setCurrentItem(position);

break;

default:

break;

}

}

};

好了現在可沒有結束,你會發現list的集合數小于3的時候又空白頁出現,但是一張的時候你又不想讓他滾動,怎么辦?主要是數據太短銷毀的時候有bug,要是list多了那就無所謂了,所以怎么辦呢?其中一個辦法,可以把小于3的list通過一個for循環構造出大于他不就OK了,所以那就開干,循環添加吧!總結這個問題就是數據一條的時候,和2/3條的時候和多于3條的時候情況不一樣,分別處理,我的做法是先在判斷集合以2為界限判斷,實驗多次就是2的時候容易空白,所以區分是2和不是的時候,是2的話讓他for循環添加兩次進去數據變成4就好了,不是2的正常執行,但是不是2的里邊包括1個的時候,那么就在setadapter的時候處理,區分新的list是1還是大于3的,這樣問題就解決了,下邊附上全部代碼!

packagecom.example.administrator.student.ui;

importandroid.annotation.SuppressLint;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.content.res.ColorStateList;

importandroid.content.res.Resources;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.os.Message;

importandroid.support.v4.view.ViewPager;

importandroid.util.TypedValue;

importandroid.view.MotionEvent;

importandroid.view.View;

importandroid.widget.ImageView;

importandroid.widget.RelativeLayout;

importandroid.widget.TextView;

importcom.example.administrator.student.R;

importcom.example.administrator.student.adapter.TMyPagerAdapters;

importcom.example.administrator.student.adapter.TTMyPagerAdapters;

importcom.example.administrator.student.bean.Main_Data;

importcom.example.administrator.student.utils.Share;

importjava.util.ArrayList;

importjava.util.List;

/**

* Created by Administrator on 2017/10/16.

*/

public classTTestViewPagersActivityextendsActivity {

privateViewPagermPager;

privateListmList;

privateListtsfbBeans=newArrayList();

privateTTMyPagerAdaptersadapter;

privateListlist;

private intposition=50000;

privateThreadchange;

privateRelativeLayoutrootlayout;

@Override

public voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_viewpager);

mPager= (ViewPager) findViewById(R.id.main_viewpager);

//返回

ImageView back = (ImageView) findViewById(R.id.back);

back.setOnClickListener(newView.OnClickListener() {

@Override

public voidonClick(View view) {

finish();

}

});

Intent intent = getIntent();

String message = intent.getStringExtra("data");

//解析數據

//? ? ? ? if (message.length() > 0) {

//? ? ? ? ? ? Gson gson = new Gson();

//? ? ? ? ? ? Main_Data main_data = gson.fromJson(message, new TypeToken() {

//? ? ? ? ? ? }.getType());

//? ? ? ? ? ? tsfbBeans = main_data.getTsfb();

//? ? ? ? }

//構造list集合

list=newArrayList();

list.add(R.mipmap.image1);

list.add(R.mipmap.image2);

list.add(R.mipmap.image3);

//? ? ? ? list.add(R.mipmap.image4);

mList=newArrayList();

initView();

}

private voidinitView() {

if(list.size() ==2) {

//如果數據是2,就添加兩個數組以避免空白頁

for(intm =0;m <2;m++) {

initValue();

}

}else{

//如果是一個數據那就添加一個

initValue();

}

adapter=newTTMyPagerAdapters(mList, this);

mPager.setAdapter(adapter);

if(mList.size() >1) {

mPager.setCurrentItem(position);

initAdapter();

}

//? ? ? ? if (mList.size() < 2) {

//

//? ? ? ? } else if (mList.size() == 2) {

//

//? ? ? ? ? ? mPager.setCurrentItem(position + 1);

//? ? ? ? ? ? initAdapter();

//? ? ? ? } else {

//? ? ? ? ? ? mPager.setCurrentItem(position);

//? ? ? ? ? ? initAdapter();

//? ? ? ? }

//mPager.setCurrentItem(count);

mPager.setOnPageChangeListener(listener);

mPager.setOnTouchListener(newView.OnTouchListener() {

@Override

public booleanonTouch(View view,MotionEvent motionEvent) {

return true;

}

});

}

private voidinitValue() {

for(inti =0;i

rootlayout=newRelativeLayout(this);

rootlayout.setLayoutParams(newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT));

rootlayout.setId(0);

ImageView imageView =newImageView(this);

RelativeLayout.LayoutParams image_Params =newRelativeLayout.LayoutParams(

dip2px(250),dip2px(192));

image_Params.setMargins(dip2px(5),0,dip2px(5),dip2px(5));

imageView.setLayoutParams(image_Params);

imageView.setImageResource(list.get(i));

//Picasso.with(ViewPagersActivity.this).load(tsfbBeans.get(i).getBook_pic()).error(R.mipmap.image1).into(imageView);

imageView.setId(1);

//字體顏色

Resources resource = (Resources) getBaseContext().getResources();

ColorStateList csl = (ColorStateList) resource.getColorStateList(R.color.book_text);

TextView text_Name =newTextView(this);

RelativeLayout.LayoutParams text_Name_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Name_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_Name_Params.addRule(RelativeLayout.ALIGN_TOP,imageView.getId());

text_Name_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_Name.setLayoutParams(text_Name_Params);

text_Name.setText("圖書描述:");

//text_Name.setText(tsfbBeans.get(i).getBook_name() + ":");

text_Name.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_Name.setTextColor(csl);

text_Name.setId(2);

TextView text_Email =newTextView(this);

RelativeLayout.LayoutParams text_Email_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Email_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_Email_Params.addRule(RelativeLayout.BELOW,text_Name.getId());

text_Email_Params.setMargins(dip2px(10),dip2px(5),dip2px(10),0);

text_Email.setLayoutParams(text_Email_Params);

text_Email.setText("《詩經》是中國古代詩歌開端,最早的一部詩歌總集,收集了西周初年至春秋中葉(前11世紀至前6世紀)的詩歌,共311篇,其中6篇為笙詩,即只有標題,沒有內容,稱為笙詩六篇");

//text_Email.setText(tsfbBeans.get(i).getBook_description());

text_Email.setTextSize(TypedValue.COMPLEX_UNIT_SP,13);

text_Email.setId(3);

TextView text_author =newTextView(this);

RelativeLayout.LayoutParams text_author_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_author_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_author_Params.addRule(RelativeLayout.BELOW,text_Email.getId());

text_author_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_author.setLayoutParams(text_author_Params);

text_author.setText("圖書作者:");

//text_author.setText("圖書作者:" + tsfbBeans.get(i).getBook_author());

text_author.setTextColor(csl);

text_author.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_author.setId(4);

TextView text_place =newTextView(this);

RelativeLayout.LayoutParams text_place_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_place_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_place_Params.addRule(RelativeLayout.BELOW,text_author.getId());

text_place_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_place.setLayoutParams(text_place_Params);

text_place.setText("出版社:");

//text_place.setText("出版社:" + tsfbBeans.get(i).getBook_publishing());

text_place.setTextColor(csl);

text_place.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_place.setId(5);

TextView text_data =newTextView(this);

RelativeLayout.LayoutParams text_data_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_data_Params.addRule(RelativeLayout.RIGHT_OF,imageView.getId());

text_data_Params.addRule(RelativeLayout.BELOW,text_place.getId());

text_data_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_data.setLayoutParams(text_data_Params);

text_data.setText("出版日期:");

// text_data.setText("出版日期:" + tsfbBeans.get(i).getBook_publication_date());

text_data.setTextColor(csl);

text_data.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_data.setId(6);

TextView text_description_name =newTextView(this);

RelativeLayout.LayoutParams text_DescriptionName_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_DescriptionName_Params.addRule(RelativeLayout.BELOW,imageView.getId());

//text_Name_Params.addRule(RelativeLayout.ALIGN_TOP, imageView.getId());

text_DescriptionName_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_description_name.setLayoutParams(text_DescriptionName_Params);

text_description_name.setText("圖書簡介:");

text_description_name.setTextColor(csl);

text_description_name.setTextSize(TypedValue.COMPLEX_UNIT_SP,15);

text_description_name.setId(7);

TextView text_description =newTextView(this);

RelativeLayout.LayoutParams text_Description_Params =newRelativeLayout.LayoutParams(

RelativeLayout.LayoutParams.WRAP_CONTENT,

RelativeLayout.LayoutParams.WRAP_CONTENT);

text_Description_Params.addRule(RelativeLayout.BELOW,text_description_name.getId());

//text_Name_Params.addRule(RelativeLayout.ALIGN_TOP, imageView.getId());

text_Description_Params.setMargins(dip2px(10),dip2px(5),0,0);

text_description.setLayoutParams(text_Description_Params);

text_description.setText("111");

//text_description.setText(tsfbBeans.get(i).getBook_abstract());

text_description.setTextSize(TypedValue.COMPLEX_UNIT_SP,13);

text_description.setId(8);

rootlayout.addView(imageView,image_Params);

rootlayout.addView(text_Name,text_Name_Params);

rootlayout.addView(text_Email,text_Email_Params);

rootlayout.addView(text_description,text_Description_Params);

rootlayout.addView(text_author,text_author_Params);

rootlayout.addView(text_place,text_place_Params);

rootlayout.addView(text_data,text_data_Params);

rootlayout.addView(text_description_name,text_DescriptionName_Params);

//setContentView(rootlayout);

mList.add(rootlayout);

}

}

ViewPager.OnPageChangeListenerlistener=newViewPager.OnPageChangeListener() {

@Override

public voidonPageSelected(intarg0) {

//TODO Auto-generated method stub

//LogUtil.e("當前頁面索引:" + arg0);

}

@Override

public voidonPageScrolled(intarg0, floatarg1, intarg2) {

//TODO Auto-generated method stub

}

@Override

public voidonPageScrollStateChanged(intarg0) {

//TODO Auto-generated method stub

}

};

private voidinitAdapter() {

Share.d("mlist"+mList.size());

//

//TODO Auto-generated method stub

//TODO Auto-generated catch block

change=newThread(newRunnable() {

@Override

public voidrun() {

//TODO Auto-generated method stub

while(true) {

handler.sendEmptyMessage(0);

try{

Thread.sleep(5000);

}catch(InterruptedException e) {

//TODO Auto-generated catch block

e.printStackTrace();

}

}

}

});

change.start();

}

@SuppressLint("HandlerLeak")

privateHandlerhandler=newHandler() {

@Override

public voidhandleMessage(Message msg) {

super.handleMessage(msg);

switch(msg.what) {

case0:

position++;

mPager.setCurrentItem(position);

break;

default:

break;

}

}

};

public intdip2px(floatdpValue) {

final floatscale =this.getResources().getDisplayMetrics().density;

return(int) (dpValue * scale +0.5f);

}

@Override

protected voidonDestroy() {

super.onDestroy();

}

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,117評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,860評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,128評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,291評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,025評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,421評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,477評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,642評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,177評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,970評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,157評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,717評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,410評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,821評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,053評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,896評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,157評論 2 375

推薦閱讀更多精彩內容