android分享2

public class Items {

????private ?int img_id;

????private ?String name;


????public int getImg_id() {

????????return img_id;

????}


????public void setImg_id(int img_id) {

????????this.img_id = img_id;

????}


????public String getName() {

????????return name;

????}


????public void setName(String name) {

????????this.name = name;

????}


????public String getExplain() {

????????return explain;

????}


????public void setExplain(String explain) {

????????this.explain = explain;

????}


????private ?String explain;

}














二、

[if !supportLists]1.?[endif]编写一个程序,可以显示实时时间,按返回时有弹出对话框提示是否退出程序,按确认后退出程序。

[if !supportLists]2.?[endif]编写一个程序,按下按钮后间隔10秒自动弹出一个Toast显示当前时间,按返回时有弹出对话框提示是否退出程序,按确认后退出程序。


public?class?MainActivity extends?Activity implements?OnClickListener{

private?AnalogClock clock;

private?Button btn,btn2;

private?DateFormat df;



public?void?onClick(View v) {

// TODO?Auto-generated method stub

switch?(v.getId()) {

case?R.id.button1:

new?AlertDialog.Builder(MainActivity.this)

.setTitle("退出提醒").setMessage("是否退出程序!")

.setNegativeButton("否", null)

.setPositiveButton("确定", new?DialogInterface.OnClickListener() { ?

????????????????public?void?onClick(DialogInterface dialog, int?whichButton) { ?

????????????????????finish(); ???????????} ????}).show(); break;

case?R.id.button2:

Date curDate = ?new?Date(System.currentTimeMillis());

df?= new?SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String dfs = ?df.format(curDate);

new?AlertDialog.Builder(MainActivity.this)

.setTitle("时间").setMessage(dfs)

.setPositiveButton("返回", new?DialogInterface.OnClickListener() { ?

????????????????public?void?onClick(DialogInterface dialog, int?whichButton) { ?

???????????????? new?AlertDialog.Builder(MainActivity.this)

???????? .setTitle("退出提醒").setMessage("是否退出程序!")

???????? .setNegativeButton("否", null)

???????? .setPositiveButton("确定", new?DialogInterface.OnClickListener() { ?

????????????????????????public?void?onClick(DialogInterface dialog, int?whichButton) { ?

????????????????????????????finish(); ?

????????????????????????} ?????}).show(); ?} ??}).show(); break;

default:

break;}}



[if !supportLists]3.?[endif]编写一个程序,实现一个登录界面,在登录界面中包含一个复选按钮“记住我”,选择时保存用户名和密码,否则不保存,打开登录界面时,如果有保存的用户名和密码,则将保存的用户名和密码显示到对应控件中。


public?void?onClick(View v) {

// TODO?Auto-generated method stub

boolean?chk = ck.isChecked();

if(chk){

namet.setText("用户名:"+String.valueOf(name.getText().toString()));

pwdt.setText("密码:"+String.valueOf(pwd.getText().toString()));

new?AlertDialog.Builder(MainActivity.this)

.setMessage("登陆记住密码 ").setPositiveButton("确认 ", null).show();

}

else{

new?AlertDialog.Builder(MainActivity.this)

.setMessage("登陆未记住密码").setPositiveButton("确认", null).show(); }
























[if !supportLists]4.?[endif]编写一个程序,实现一个日记功能,将写好的日记保存到文件Diary中,点击浏览的时候查看日记内容。


public?void?onClick(View v) {

// TODO?Auto-generated method stub

String neirong = et.getText().toString();

String dizi = "riji.text";

switch?(v.getId()) {

case?R.id.button1:

?FileOutputStream out = null;

try?{

out = context.openFileOutput(dizi, Context.MODE_PRIVATE);

out.write(neirong.getBytes("UTF-8"));

} catch?(Exception e) {

// TODO?Auto-generated catch block

e.printStackTrace();

}

finally{ ?

????????????????try?{ ?

????????????????????out.close(); ?

????????????????} catch?(Exception e) { ?

????????????????????e.printStackTrace(); ?

????????????????} ?

????????????}

break;

?????????case?R.id.button2:

?????????????FileInputStream in = null; ?

?????????????ByteArrayOutputStream bout = null; ?

?????????????byte[]buf = new?byte[1024]; ?

?????????????bout = new?ByteArrayOutputStream(); ?

?????????????int?length = 0; ?

?????????????try?{ ?

?????????????????in = context.openFileInput(dizi); //获得输入流 ?

?????????????????while((length=in.read(buf))!=-1){ ?

?????????????????????bout.write(buf,0,length); ?

?????????????????} ?

?????????????????byte[] content = bout.toByteArray(); ?

?????????????????tv.setText(new?String(content,"UTF-8")); //设置文本框为读取的内容 ?

?????????????} catch?(Exception e) { ?

?????????????????e.printStackTrace(); ?

?????????????} ?

?????????????tv.invalidate(); //刷新屏幕 ?

?????????????try{ ?

?????????????????in.close(); ?

?????????????????bout.close(); ?

?????????????} ?

?????????????catch(Exception e){} ?


break;


[if !supportLists]5.?[endif]编写一个程序,实现图片的浏览,向左滑动显示下一张图片,向右滑动显示上一张图片。


package com.example.img;

?

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.view.MotionEvent;

import android.view.View;

import android.view.View.OnTouchListener;

import android.widget.ImageView;

?

public class MainActivity extends Activity implements OnTouchListener{

???int caozuo = 0;

???float x1 = 0;

???float x2 = 0;

???public ImageView image;

????@Override

????protected void onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_main);

????????image = (ImageView)findViewById(R.id.imageView1);

????}

?

?

????@Override

????public boolean onCreateOptionsMenu(Menu menu) {

????????// Inflate the menu; this adds items to the action bar if it is present.

????????getMenuInflater().inflate(R.menu.main, menu);

????????return true;

????}

?

?

?

?

?

?

?

@Override

public boolean onTouch(View v, MotionEvent event) {

????

if(event.getAction() == MotionEvent.ACTION_DOWN)

x1 = event.getX();

if(event.getAction() == MotionEvent.ACTION_UP){

x2 = event.getX();

if(x1-x2>=5){

caozuo =caozuo+1;

caozuo = caozuo%8;

if(caozuo==0)

{

caozuo ++;

}

image.setImageResource(R.drawable.a_1+caozuo);

}

if(x2-x1>=5){

caozuo =caozuo-1;

if(caozuo<=0){

caozuo = 7;

}

image.setImageResource(R.drawable.a_1+caozuo);

}

}

return false;

}

????

}//注意要添加照片进入文件中



[if !supportLists]6.?[endif]编写一个程序,通过Handler和Thread或Runnable实现以10秒时间显示完进度条进度。


private?ProgressBar progress;

private?int?max?= 100,current?= 0,step?= 0;

????@Override

????protected?void?onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_main);

????????progress?= (ProgressBar)findViewById(R.id.progressBar3);


????????progress.setMax(max);

????????progress.setProgress(0);

????????step?= max/10;


????????new?Thread(new?Runnable() {

???????? int?i?=1;

@Override

public?void?run() {

// TODO?Auto-generated method stub

try?{

while?(max!=progress.getProgress()) {

???Log.i("次数", i?+ ""); ?

???????????????????????i++; ?

???????????????????????progress.setProgress(current?+ step); ?

???????????????????????current?= progress.getProgress(); ?

???????????????????????Thread.sleep(1000);

}

} catch?(Exception e) {

// TODO: handle exception

}}

}).start();


????}


[if !supportLists]7.?[endif]编写一个程序,通过AsyncTask实现以20秒时间显示完进度条进度。


package com.example.jindutiao20s;


import android.os.AsyncTask;

import android.os.Bundle;

. import android.app.Activity;. import android.view.Menu;

import android.widget.ProgressBar;

import android.widget.TextView;.

. public class MainActivity extends Activity {.

private ProgressBar myBar;

private TextView textView;

????@Override

. ????protected void onCreate(Bundle savedInstanceState) {

. ????????super.onCreate(savedInstanceState); ?????????setContentView(R.layout.activity_main);

????????myBar = (ProgressBar)findViewById(R.id.progressBar1);

???????????textView = (TextView)findViewById(R.id.textView1);

???????????MyAsync my = new MyAsync();

????????my.execute();

????}

????class MyAsync extends AsyncTask{


???? int index = 0;

???? @Override

. ???? protected void onPreExecute() {

. ???? // TODO Auto-generated method stub

???? super.onPreExecute();

. ???? textView.setText("0%");

??? }

protected Integer doInBackground(Void... params) {. ????????????

try {

for(int i =0;i<=20;i++){

Thread.sleep(1000);

index ++;

publishProgress(index);

}

. } catch (Exception e) {

// TODO: handle exception

}

return null;

}

. @Override

. protected void onProgressUpdate(Integer... values) {

// TODO Auto-generated method stub

. super.onProgressUpdate(values);

. textView.setText(values[0]*5+"%");

. myBar.setProgress(index*5);

. }

. ???? @Override

. ???? protected void onPostExecute(Integer result) {

. ???? // TODO Auto-generated method stub

. ???? super.onPostExecute(result);

. ???? }

. ????

. ????

. ????}

.

.

. ????@Override. ????public boolean onCreateOptionsMenu(Menu menu) {

????????// Inflate the menu; this adds items to the action bar if it is present.

????????getMenuInflater().inflate(R.menu.main, menu);

????????return true;. ????}


}

[if !supportLists]8.?[endif]编写一个程序,手动绑定列表控件ListView,每条记录中包含图片,名称和描述。

两个布局布局1 ?listview布局二 对一个item进行布局 图片文字

三类主类调用该

package com.example.bangding;


import java.util.ArrayList;

import java.util.List;


import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

import android.widget.ListView;


public class MainActivity extends Activity {


private List list;

private ListView listview;

????private ?MyAdapter adapter;

????@Override

????protected void onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_main);

????????list = new ArrayList();

????????listview = (ListView)findViewById(R.id.listView1);

????????init();


????}

????private void init()

????{

????????for (int i =1;i<=10;i++)

????????{

???????? Items items = new Items();

????????????items.setImg_id(R.drawable.a_1+i);

items.setName("名字:" + i);

items.setExplain("解释: "+ i);

????????????list.add(items);

????????????adapter = new MyAdapter(MainActivity.this,list);

????????????listview.setAdapter(adapter);


????????}

????}


????@Override

????public boolean onCreateOptionsMenu(Menu menu) {

????????// Inflate the menu; this adds items to the action bar if it is present.

????????getMenuInflater().inflate(R.menu.main, menu);

????????return true;

????}


}

Items类 声明 ??

package?com.example.bangding;


public?class?Items {

???public?int?getImg_id() {

return?img_id;

}

public?void?setImg_id(int?img_id) {

this.img_id?= img_id;

}

public?String getExplain() {

return?explain;

}

public?void?setExplain(String explain) {

this.explain?= explain;

}

public?String getName() {

return?name;

}

public?void?setName(String name) {

this.name?= name;

}

???private?int?img_id;

???private?String name;

???private??String explain;

}


Myadapter进行布局 ???线程

package?com.example.bangding;

import?android.content.Context;

import?android.view.LayoutInflater;

import?android.view.View;

import?android.view.ViewGroup;

import?android.widget.BaseAdapter;

import?android.widget.ImageView;

import?android.widget.TextView;

import?java.util.List;

public?class?MyAdapter extends?BaseAdapter {

????private?List list?;

????private?LayoutInflater inflater;

????public??MyAdapter(Context context,List list)

????{

????????this.list?= list;

????????inflater?= LayoutInflater.from(context);

????}

????@Override

????public?int?getCount() {

????????return?list.size();

????}


????@Override

????public?Object getItem(int?position) {

????????return?list.get(position);

????}


????@Override

????public?long?getItemId(int?position) {

????????return?position;

????}


????@Override

????public?View getView(int?position, View convertView, ViewGroup parent) {

????????View view;

????????ViewHolder holder;


????????if(convertView==null)

????????{

????????????view = inflater.inflate(R.layout.myactivity,null);

????????????holder = new?ViewHolder(view);

????????????view.setTag(holder);

????????}

????????else

????????{

????????????view = convertView;

????????????holder = (ViewHolder) view.getTag();

????????}

????????Items items = ?list.get(position);

????????holder.img.setImageResource(items.getImg_id());

????????holder.name.setText(items.getName());

????????holder.explain.setText(items.getExplain());

????????return?view;

????}

????class??ViewHolder

????{

????????private?ImageView img;

????????private?TextView name;

????????private??TextView explain;

????????public?ViewHolder(View view)

????????{

????????????img?= (ImageView)view.findViewById(R.id.imageView1);

????????????name?= (TextView)view.findViewById(R.id.textView1);

????????????explain?= (TextView)view.findViewById(R.id.textView2);

????????}

????}

}



[if !supportLists]9.?[endif]编写一个程序,通过使用Service来实现简单的播放器。

public class Myservice extends Service {

???private MediaPlayer player;

????private boolean ispaused = false;

????private ?int position =0;

????@Override

public void onCreate() {//最一开始会执性这个方法 如果服务在启动之中就不会启动这个方法直接调用onStartCommand 方法

????????super.onCreate();

Log.i("TAG","开始播放");

????????player = MediaPlayer.create(this,R.raw.qiyueshang);}

public void onDestroy() {//停止服务

????????super.onDestroy();

????????if(player != null)

????????????player.stop(); ???}

public ?void Play(int pos)//播放

????{

????????if(player!=null) ??????{

????????????player.start();

Log.i("TAG","开始播放");

????????????player.seekTo(pos); ?????} ??}

public void Pause()//暂停

????{

????????if(player != null && player.isPlaying()) ??{

position = player.getCurrentPosition();//获取播放位置

player.pause();//暂停音乐

????????????ispaused = true; ???}

????????else if(ispaused) ??{

????????????Play(position); ??}??}

public ?void Rest()//重放

{??if(player!=null)

????????????Play(0); ?}

????@Override

public int onStartCommand(Intent intent, int flags, int startId) {//开始服务

????????int flag = intent.getIntExtra("MSG",0);

????????if(flag==1)

????????{Play(0);}

????????else if(flag==2)

????????{Pause();}

????????else if(flag==3)

????????{Rest();}

????????Log.i("MSG",flag+"");

????????return super.onStartCommand(intent, flags, startId);

}

????public IBinder onBind(Intent intent) {

????????return null;

????}

}

[if !supportLists]10.?[endif]编写一个程序,实现在状态栏提示有新短消息,展开状态栏点击消息时弹出详细信息界面。

public class NotifaicationActivity extends AppCompatActivity ?implements View.OnClickListener{

????private ?Notification notification;

????private Button send_notifiaction,stop_notification;

????private ??NotificationManager manager;

????@Override

????protected void onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_main);

????????send_notifiaction = (Button)findViewById(R.id.send_notification);

????????stop_notification = (Button)findViewById(R.id.stop_notification);

????????send_notifiaction.setOnClickListener(this);

????????stop_notification.setOnClickListener(this);

//第一步首先获取Notification管理对象

????????manager ??= (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

//第二步获取Notification.Builder对象

????????Notification.Builder builder = new Notification.Builder(this);

//设置小图标

????????builder.setSmallIcon(R.mipmap.ic_launcher);

//提示音 振动 闪烁都是默认

????????builder.setDefaults(Notification.DEFAULT_ALL);

builder.setTicker("短信");

builder.setContentTitle("有短信");

builder.setContentText("短信来了");

????????Intent intent = new Intent(this,NotifaicationActivity.class);

//生成PendingIntene对象

????????PendingIntent pendingIntent = PendingIntent.getActivity(this,1,intent,0);

//设置跳转页面

????????builder.setContentIntent(pendingIntent);

//获得Notifaication对象

????????notification = builder.build();



????}


????@Override

????public void onClick(View v) {

????????switch (v.getId())

????????{

????????????case R.id.send_notification:

manager.notify(1,notification);//第一个时标识号 第二个是对象

????????????????break;

????????????case R.id.stop_notification:

????????????????manager.cancel(1);

????????????????break;


????????}

????}

}

[if !supportLists]11.?[endif]编写一个程序,实现ListView显示好友列表信息,要求使用BaseAdapter。

public class MyAdapter extends BaseAdapter {

????private List list ;

????private LayoutInflater inflater;

????public ?MyAdapter(Context context,List list)

????{

????????this.list = list;

????????inflater = LayoutInflater.from(context);

????}

????@Override

????public int getCount() {

????????return list.size();

????}


????@Override

????public Object getItem(int position) {

????????return list.get(position);

????}


????@Override

????public long getItemId(int position) {

????????return position;

????}


????@Override

????public View getView(int position, View convertView, ViewGroup parent) {

????????View view;

????????ViewHolder holder;


????????if(convertView==null)

????????{

????????????view = inflater.inflate(R.layout.item,null);

????????????holder = new ViewHolder(view);

????????????view.setTag(holder);

????????}

????????else

????????{

????????????view = convertView;

????????????holder = (ViewHolder) view.getTag();

????????}

????????Items items = ?list.get(position);

????????holder.img.setImageResource(items.getImg_id());

????????holder.name.setText(items.getName());

????????holder.explain.setText(items.getExplain());

????????return view;

????}

????class ?ViewHolder

????{

????????private ImageView img;

????????private TextView name;

????????private ?TextView explain;

????????public ViewHolder(View view)

????????{

????????????img = (ImageView)view.findViewById(R.id.imageView);

????????????name = (TextView)view.findViewById(R.id.name);

????????????explain = (TextView)view.findViewById(R.id.explain);

????????}

????}

}


[if !supportLists]12.?[endif]编写一个程序,实现点击一个按钮,打开一个新的Activity并传递“hello”,在新的Activity,接收传递过来的“hello”,将“hello”改成“hello world”,结束当前Activity并将需要修改后的值返回并关闭当前窗体。

public class IntentFirstActivity extends AppCompatActivity {

????private Button send;

????private EditText edit;

????@Override

????protected void onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_intent_first);

????????send = (Button)findViewById(R.id.send_message);

????????edit = (EditText)findViewById(R.id.input);

????????send.setOnClickListener(new View.OnClickListener() {

????????????@Override

????????????public void onClick(View v) {

????????????????Intent intent = new Intent(IntentFirstActivity.this,IntentSecondActivity.class);

????????????????intent.putExtra("MSG",edit.getText().toString());

????????????????startActivityForResult(intent,2);

????????????}

????????});

????}

????@Override

????protected void onActivityResult(int requestCode, int resultCode, Intent data) {

???????edit.setText(data.getStringExtra("MSG"));

Toast.makeText(this,"收到新的值了",Toast.LENGTH_SHORT).show();

????}

}



??protected void onCreate(Bundle savedInstanceState) {

????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.activity_intent_second);

????????send = (Button)findViewById(R.id.transition_msg);

????????Msg = (EditText)findViewById(R.id.return_msg);

????????receive_msg = (TextView)findViewById(R.id.receive);

receive_msg.setText("收到的信息为:" + getIntent().getStringExtra("MSG"));

????????send.setOnClickListener(new View.OnClickListener() {

????????????@Override

????????????public void onClick(View v) {

????????????????Intent intent = new Intent();

????????????????intent.putExtra("MSG",Msg.getText().toString());

//将修改的结果返回给上一个intent

????????????????setResult(1,intent);

????????????????finish();

????????????}

????????});

????}

}


三、

1.实现个人通讯录管理,主界面中包含添加按钮和ListView,能实现通讯录的添加和管理;所有通讯录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

呼叫、编辑联系人、删除联系人,分别实现这几个功能。

2.实现个人通讯录管理,主界面中包含添加按钮和ListView,能实现通讯录的添加和管理;所有通讯录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、浏览联系人、删除联系人,分别实现这几个功能。

3.实现个人备忘录管理,主界面中包含添加按钮和ListView,能实现对备忘录的添加和管理;所有备忘录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、编辑、删除,分别实现这几个功能。

4.实现个人备忘录管理,主界面中包含添加按钮和ListView,能实现对备忘录的添加和管理;所有备忘录信息通过ListView控件显示,长按ListView中的一项,出现以下功能选项:

复制、浏览、删除,分别实现这几个功能。

5.实现学生管理,登录界面,实现用户的登录,登录成功后,显示添加学生信息界面,学生信息包括学号、姓名、学院、专业和性别,输入完成后点击添加按钮添加到数据库中。要求:选择学院时专业发生相应的变化,性别采用单选按钮。

6.实现收货管理,包括以下功能:

1)用户登录功能;

2)货物管理功能,长按某条记录进行编辑和删除,或点击全部删除,清空所有收到的货物列表;

3)收货功能,货物信息:货物名称、件数、运费、目的地、收货人、电话等信息。

7.实现挂号预约系统,包括以下功能:

1)挂号预约,包括姓名、性别、年龄、地址、所挂科室等;

2)挂号预约管理,使用ListView实现,可删除或重新预约。

8.个人理财系统,包括以下功能:

1)支出录入:日期、金额、项目

2)收入录入:日期、金额、项目

3)支出收入列表,查询一个时间段的收入或支出情况并汇总。

9.日记系统,包括以下功能:

1)写日记,包括日期、天气、标题、内容等;

2)日记列表,根据条件查询日记,能实现对日记信息的显示,点击一条日记信息,显示日记详细内容,长按每条记录,能弹出对日记信息的修改、删除。

10.作业系统,包括以下功能:

1)记录作业,包括日期、作业类型(语文或数学等)、作业内容

2)显示作业列表,点击某项作业,转到作业详细信息界面,在该界面,可设置作业已完成、未做、不会等标识。

11.考勤系统,包括以下功能:

1)记录考勤,包括日期,年级,班级,总人数,旷课人数,请假人数;

2)记录旷课人具体信息,包括日期,年级,班级,旷课人姓名

3)显示考勤列表

?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,128评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,316评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,737评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,283评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,384评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,458评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,467评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,251评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,688评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,980评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,155评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,818评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,492评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,142评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,382评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,020评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,044评论 2 352

推荐阅读更多精彩内容