Objective-C:按鈕(UIButton)

一耕陷、UIButton的定義

兩種創(chuàng)建方法?? ? ? ?

1)常規(guī)的initWithFrame的方式

UIButton *btn1 = [[UIButton alloc]initWithFrame:CGRectMake(100, 50, 100, 75)];

[btn1 setTitle:@"close" forState:UIControlStateNormal];

btn1.backgroundColor = [UIColor greenColor];//button的背景顏色

[btn1 setBackgroundImage:[UIImage imageNamed:@"1.png"] forState:UIControlStateNormal];//button的背景圖片

2)UIButton 的一個(gè)類方法(也可以說是靜態(tài)方法)buttonWithType?

UIButton *btn2 = [UIButton buttonWithType:UIButtonTypeRoundedRect];//創(chuàng)建一個(gè)圓角矩形的按鈕btn2.frame = CGRectMake(200, 20, 50, 60);

btn2.backgroundColor = [UIColor blackColor];

[btn2 setTitle:@"clicke" forState:UIControlStateNormal];

[self.window addSubview:btn1];

[self.window addSubview:btn2];

創(chuàng)建一個(gè)自定義的按鈕

UIButton *button1=[UIButton buttonWithType:UIButtonTypeCustom];

能夠定義的button類型有以下6種

typedef enum {

? ? ? UIButtonTypeCustom = 0,? ? ? ? ? 自定義風(fēng)格-無類型免钻,按鈕的內(nèi)容需要自定義:位置尺寸领舰、背景色,等(如果沒有自定義這些可能會看不到

? ? ? UIButtonTypeRoundedRect,? ? ? ? 圓角矩形

? ? ? UIButtonTypeDetailDisclosure,? ? 藍(lán)色小箭頭按鈕丽旅,主要做詳細(xì)說明用

? ? ? UIButtonTypeInfoLight,? ? ? ? ? 亮色感嘆號

? ? ? UIButtonTypeInfoDark,? ? ? ? ? ? 暗色感嘆號

? ? ? UIButtonTypeContactAdd,? ? ? ? ? 十字加號按鈕

? ? } UIButtonType;

???????注意:按鈕創(chuàng)建好之后咆疗,按鈕的類型是不可以被修改的

知識點(diǎn):Detail Disclosure/info Light/info Dark長一樣(iOS7以前不一樣,扁平化以后都一樣,殘留的東西)

二午磁、設(shè)置frame

????//給定button在view上的位置?

?????button1.frame = CGRectMake(20, 20, 280, 20);

? ? [button setFrame:CGRectMake(20,20,50,50)];

????調(diào)整Button內(nèi)部布局????

1呀舔,調(diào)整內(nèi)部子控件布局應(yīng)用場景

-按鈕文字在圖片下方

-按鈕文字在圖片上方

-按鈕文字在圖片左邊(默認(rèn)是在右邊)

-等等; 根據(jù)需求調(diào)整布局內(nèi)部子控件

2,實(shí)現(xiàn)步驟

-自定義按鈕->創(chuàng)建一個(gè)繼承 UIButton 的子類(如:CDHButton)

-給自定義按鈕中的子控件重新布局(有兩種方法)

-方法一:要實(shí)現(xiàn)兩個(gè)對象方法

-(CGRect)titleRectForContentRect:(CGRect)contentRect{

? ? // 返回文字的frame?

}

-? (CGRect)imageRectForContentRect:(CGRect)contentRect{

? ? // 返回圖片的frame

}

-方法二:實(shí)現(xiàn)layoutSubViews方法

- (void)layoutSubviews{

? ? [super layoutSubviews];

? ? // 插入需要設(shè)置位置尺寸的語句话浇,并返回frame

}

3脏毯,設(shè)置是否調(diào)整圖片的顯示亮度

設(shè)置屬性

// 設(shè)置在 Highlighted 狀態(tài)點(diǎn)擊時(shí)是否調(diào)整圖片顯示亮度

@property(nonatomic)? ? ? ? ? BOOL? ? ? ? adjustsImageWhenHighlighted;? ? // default is YES. if YES, image is drawn darker when highlighted(pressed)

// 設(shè)置在disabled狀態(tài)是否調(diào)整圖片顯示亮度

@property(nonatomic)? ? ? ? ? BOOL? ? ? ? adjustsImageWhenDisabled;? ? ? // default is YES. if YES, image is drawn lighter when disabled

/* ?在disabled要不要調(diào)整顯示的圖片,當(dāng)disabled的時(shí)候也不改變背景色??*/

self.adjustsImageWhenDisabled = NO;

4幔崖,按鈕的內(nèi)邊距

設(shè)置內(nèi)邊距屬性

// 按鈕內(nèi)的子控件(圖片和文字)的內(nèi)邊距食店,

@property(nonatomic) UIEdgeInsets contentEdgeInsets UI_APPEARANCE_SELECTOR; // default is UIEdgeInsetsZero

// 按鈕內(nèi)的子控件(文字)的內(nèi)邊距渣淤,

@property(nonatomic) UIEdgeInsets titleEdgeInsets; // default is UIEdgeInsetsZero

// 按鈕內(nèi)的子控件(圖片)的內(nèi)邊距,

@property(nonatomic) UIEdgeInsets imageEdgeInsets; // default is UIEdgeInsetsZero

例子:

// 設(shè)置按鈕內(nèi)圖片和文字內(nèi)邊距位置為(30吉嫩,30)价认,即是按鈕內(nèi)圖片和文字一起右移30,下移30

self.btn.contentEdgeInsets = UIEdgeInsetsMake(30, 30, 0, 0);

// 設(shè)置按鈕內(nèi)文字內(nèi)邊距位置為(0自娩,-30)用踩,即是按鈕內(nèi)文字上移30

self.btn.titleEdgeInsets = UIEdgeInsetsMake(0, -30, 0, 0);

// 設(shè)置按鈕內(nèi)圖片內(nèi)邊距位置為(0,-30)忙迁,即是按鈕內(nèi)圖片上移30

self.btn.imageEdgeInsets = UIEdgeInsetsMake(0, -30, 0, 0);

三脐彩、button背景色

????//button背景色

?????button1.backgroundColor = [UIColor clearColor];

? ? ? [button setBackgroundColor:[UIColor blueColor]];

四、設(shè)置button填充圖片和背景圖片

//設(shè)置button填充圖片和背景圖片

? ? [button1 setImage:[UIImage imageNamed:@"btng.png"] forState:UIControlStateNormal];

? ? [button setBackgroundImage:[UIImageimageNamed:@"btng.png"]forState:UIControlStateNormal];

五姊扔、設(shè)置button標(biāo)題和標(biāo)題顏色

//設(shè)置button標(biāo)題和標(biāo)題顏色

? ? [button1 setTitle:@"點(diǎn)擊" forState:UIControlStateNormal];

? ? [button setTitleColor:[UIColorredColor]forState:UIControlStateNormal];

? ? [button setTitleShadowColor:[UIColor grayColor] forState:UIControlStateNormal ]; //陰影

六惠奸、state狀態(tài)

forState:?這個(gè)參數(shù)的作用是定義按鈕的文字或圖片在何種狀態(tài)下才會顯現(xiàn)

以下是幾種狀態(tài)

enum {

? ? ? ? UIControlStateNormal? ? ? = 0,? ? ? ? 常規(guī)狀態(tài)顯現(xiàn)? ? ? ? ? ?

? ? ? ? UIControlStateHighlighted? = 1 << 0,? ? 高亮狀態(tài)顯現(xiàn)?

? ? ? ? UIControlStateDisabled? ? = 1 << 1,? ? 禁用的狀態(tài)才會顯現(xiàn)

? ? ? ? UIControlStateSelected? ? = 1 << 2,? ? 選中狀態(tài)? ? ? ? ? ?

? ? ? ? UIControlStateApplication? = 0x00FF0000, 當(dāng)應(yīng)用程序標(biāo)志時(shí)? ? ? ? ?

? ? ? ? UIControlStateReserved? ? = 0xFF000000? 為內(nèi)部框架預(yù)留,可以不管他? ? ? ? ? ?

? ? };

@property(nonatomic,getter=isEnabled)BOOL enabled; // default is YES. if NO, ignores touch events and subclasses may draw differently?

?@property(nonatomic,getter=isSelected)BOOL selected; // default is NO may be used by some subclasses or by application?

?@property(nonatomic,getter=isHighlighted)BOOL highlighted;

1. normal(普通狀態(tài))

-默認(rèn)情況(Default)

-對應(yīng)的枚舉常量:UIControlStateNormal

-除開UIControlStateHighlighted恰梢、UIControlStateDisabled佛南、UIControlStateSelected以外的其他情況,都是normal狀態(tài)

-這種狀態(tài)下的按鈕【可以】接收點(diǎn)擊事件

-如果前后連著設(shè)置按鈕同時(shí)處于多種狀態(tài), 則表現(xiàn)出來的也是 normal 狀態(tài), 除去如果有 設(shè)置為 enabled = NO; 則會進(jìn)入U(xiǎn)IControlStateDisabled狀態(tài)(包括顏色), 不能點(diǎn)擊

//下面兩種雜交在一起(就不是 normal 后面三種 ), 會顯示為 Normal 狀態(tài)的顏色,

//但是 設(shè)置了 Enabled == NO, 所以這里也是不能點(diǎn)擊的,

self.button.selected = YES;

self.button.enabled = NO;

2. highlighted(高亮狀態(tài))

-對應(yīng)的枚舉常量:UIControlStateHighlighted

-【當(dāng)按住按鈕不松開】或者【highlighted = YES】時(shí)就能達(dá)到這種狀態(tài)

-這種狀態(tài)下的按鈕【可以】接收點(diǎn)擊事件

3.selected (選中狀態(tài))

-對應(yīng)的枚舉常量:?UIControlStateSelected

-【button.selected = YES】時(shí)就能達(dá)到這種狀態(tài)

-這種狀態(tài)下的按鈕【可以】接收點(diǎn)擊事件

4. disabled(失效狀態(tài)嵌言,不可用狀態(tài))

-如果enabled屬性為NO嗅回,就是處于disable狀態(tài),代表按鈕不可以被點(diǎn)擊

-對應(yīng)的枚舉常量:UIControlStateDisabled

-【button.enabled = NO】時(shí)就能達(dá)到這種狀態(tài)

-這種狀態(tài)下的按鈕【無法】接收點(diǎn)擊事件

5. 讓按鈕無法點(diǎn)擊的2種方法

-button.enabled = NO;?

【會】進(jìn)入U(xiǎn)IControlStateDisabled狀態(tài)

-button.userInteractionEnabled = NO;?

【不會】進(jìn)入U(xiǎn)IControlStateDisabled狀態(tài)摧茴,繼續(xù)保持當(dāng)前狀態(tài)

重寫按鈕的某個(gè)狀態(tài)屬性的 setter 方法和 getter 方法設(shè)置按鈕的狀態(tài)

-如: 重寫按鈕高亮get方法, 如果返回值是 yes , 則永遠(yuǎn)返回的是高亮狀態(tài), 如果返回值是 NO 則永遠(yuǎn)返回的是非高亮

- (BOOL)isHighlighted{

? return NO;

}

-重寫按鈕高亮 set 方法, 如果沒有實(shí)現(xiàn)內(nèi)部屬性賦值(屬性是父類定義的, 要調(diào)用父類的方法賦值), 則不會出現(xiàn)高亮狀態(tài)

?// ? 如果給內(nèi)部屬性賦值為 Yes , 則會一直為 YES狀態(tài), 如果賦值為 NO, 則一直未 NO 狀態(tài)

- (void)setHighlighted:(BOOL)highlighted{

? [super setHighlighted:highlighted];

}

七绵载、設(shè)置按鈕按下是否顏色變深

/*

? ? * 默認(rèn)情況下,當(dāng)按鈕高亮的情況下蓬蝶,圖像的顏色會被畫深一點(diǎn)尘分,如果這下面的這個(gè)屬性設(shè)置為no,那么可以去掉這個(gè)功能

? ? */? ??

button1.adjustsImageWhenHighlighted = NO;

/* 跟上面的情況一樣丸氛,默認(rèn)情況下培愁,當(dāng)按鈕禁用的時(shí)候,圖像會被畫得深一點(diǎn)缓窜,設(shè)置NO可以取消設(shè)置 */?

?button1.adjustsImageWhenDisabled = NO;

八定续、設(shè)置按鈕按下會發(fā)光

/* 下面的這個(gè)屬性設(shè)置為yes的狀態(tài)下,按鈕按下會發(fā)光 */?

?button1.showsTouchWhenHighlighted = YES;

九禾锤、添加或刪除事件處理

/* 給button添加事件私股,事件有很多種

? ? 按下按鈕,并且手指離開屏幕的時(shí)候觸發(fā)這個(gè)事件恩掷,跟web中的click事件一樣倡鲸。

? ? 觸發(fā)了這個(gè)事件以后,執(zhí)行butClick:這個(gè)方法黄娘,addTarget:self 的意思是說峭状,這個(gè)方法在本類中也可以傳入其他類的指針 ?*/ ? ?

//添加事件? ??

[button1 addTarget:self action:@selector(butClick:) forControlEvents:UIControlEventTouchUpInside];

?//刪除事件? ?

?[button1 removeTarget:nil action:nil forControlEvents:UIControlEventTouchUpInside];

?//顯示控件? ?

?[self.view addSubview:button1];

十克滴、設(shè)置按鈕內(nèi)部圖片間距和標(biāo)題間距

UIEdgeInsets insets; // 設(shè)置按鈕內(nèi)部圖片間距

insets.top = insets.bottom = insets.right = insets.left = 10;

bt.contentEdgeInsets = insets;

bt.titleEdgeInsets = insets; // 標(biāo)題間距

十一、一些其他的按鈕設(shè)置

btn1.titleLabel.font = [UIFont fontWithName:@“test” size:18];//設(shè)置按鈕字體大小

[btn1 setTag:101] ;//設(shè)置tag值

btn1.layer.cornerRadius = 4.5;//設(shè)置圓角——四個(gè)圓角半徑

btn1.layer.borderWidth = 0.5;// 按鈕邊框?qū)挾?/p>

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); // 設(shè)置顏色空間為rgb优床,用于生成

ColorRefCGColorRef borderColorRef = CGColorCreate(colorSpace,(CGFloat[]){ 0, 0, 0, 1 }); // 新建一個(gè)紅色的ColorRef劝赔,用于設(shè)置邊框(四個(gè)數(shù)字分別是 r, g, b, alpha)btn1.layer.borderColor = borderColorRef;

十二、重寫繪制行為

你可以通過子類化按鈕來定制屬于你自己的按鈕類胆敞。在子類化的時(shí)候你可以重載下面這些方法着帽,這些方法返回CGRect結(jié)構(gòu),指明了按鈕每一組成部分的邊界移层。

? ? ? ????????注意:不要直接調(diào)用這些方法仍翰, 這些方法是你寫給系統(tǒng)調(diào)用的。

backgroundRectForBounds //指定背景邊界?

contentRectForBounds // 指定內(nèi)容邊界?

titleRectForContentRect // 指定文字標(biāo)題邊界?

?imageRectForContentRect //指定按鈕圖像邊界

? ??????例:

- (CGRect)imageRectForContentRect:(CGRect)bounds{

? ? return CGRectMake(0.0, 0.0, 44, 44);

}

[btn1 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];//添加點(diǎn)擊按鈕事件

-(void)btnPressed:(id)sender{?

? ? ? UIButton* btn = (UIButton*)sender;?

? ? ? //開始寫你自己的動作?

}

forControlEvents參數(shù)類型

typedef NS_OPTIONS(NSUInteger, UIControlEvents)

{

? ? UIControlEventTouchDown? ? ? ? ? ? ? ? = 1 <<? 0,? ? ? // 單點(diǎn)觸摸按下事件:用戶點(diǎn)觸屏幕幽钢,或者又有新手指落下的時(shí)候歉备。? ??

????UIControlEventTouchDownRepeat? ? ? = 1 <<? 1,? ? ? // 多點(diǎn)觸摸按下事件傅是,點(diǎn)觸計(jì)數(shù)大于1:用戶按下第二匪燕、三、或第四根手指的時(shí)候喧笔。? ??

????UIControlEventTouchDragInside? ? ? ? = 1 <<? 2,? ? ? // 當(dāng)一次觸摸在控件窗口內(nèi)拖動時(shí)帽驯。? ??

????UIControlEventTouchDragOutside? ? ? = 1 <<? 3,? ? ? // 當(dāng)一次觸摸在控件窗口之外拖動時(shí)。? ??

????UIControlEventTouchDragEnter? ? ? ? ? = 1 <<? 4,? ? ? // 當(dāng)一次觸摸從控件窗口之外拖動到內(nèi)部時(shí)? ??

????UIControlEventTouchDragExit? ? ? ? ? ? = 1 <<? 5,? ? ? // 當(dāng)一次觸摸從控件窗口內(nèi)部拖動到外部時(shí)书闸。? ??

????UIControlEventTouchUpInside? ? ? ? ? ? = 1 <<? 6,? ? ? // 所有在控件之內(nèi)觸摸抬起事件? ??

????UIControlEventTouchUpOutside? ? ? ? ? = 1 <<? 7,? ? ? // 所有在控件之外觸摸抬起事件(點(diǎn)觸必須開始與控件內(nèi)部才會發(fā)送通知)尼变。? ??

????UIControlEventTouchCancel? ? ? ? ? ? ? ? = 1 <<? 8,? ? ? //所有觸摸取消事件,即一次觸摸因?yàn)榉派狭颂嗍种付蝗∠ⅲ蛘弑簧湘i或者電話呼叫打斷嫌术。? ?

?????UIControlEventValueChanged? ? ? ? ? ? = 1 << 12,? ? // 當(dāng)控件的值發(fā)生改變時(shí),發(fā)送通知牌借。用于滑塊度气、分段控件、以及其他取值的控件膨报。你可以配置滑塊控件何時(shí)發(fā)送通知磷籍,在滑塊被放下時(shí)發(fā)送,或者在被拖動時(shí)發(fā)送现柠。? ??

????UIControlEventEditingDidBegin? ? ? ? ? = 1 << 16,? ? // 當(dāng)文本控件中開始編輯時(shí)發(fā)送通知? ??

????UIControlEventEditingChanged? ? ? ? ? = 1 << 17,? ? // 當(dāng)文本控件中的文本被改變時(shí)發(fā)送通知院领。? ??

????UIControlEventEditingDidEnd? ? ? ? ? ? ? = 1 << 18,? ? // 當(dāng)文本控件中編輯結(jié)束時(shí)發(fā)送通知。? ??

????UIControlEventEditingDidEndOnExit? ? = 1 << 19,? ? // 當(dāng)文本控件內(nèi)通過按下回車鍵(或等價(jià)行為)結(jié)束編輯時(shí)够吩,發(fā)送通知比然。? ??

????UIControlEventAllTouchEvents? ? ? ? ? ? = 0x00000FFF,? // 通知所有觸摸事件。? ??

????UIControlEventAllEditingEvents? ? ? ? ? = 0x000F0000,? // 通知所有關(guān)于文本編輯的事件周循。? ??

????UIControlEventApplicationReserved? ? = 0x0F000000,? // range available for application use? ??

????UIControlEventSystemReserved? ? ? ? ? = 0xF0000000,? // range reserved for internal framework use? ??

????UIControlEventAllEvents? ? ? ? ? ? ? ? ? ? ? = 0xFFFFFFFF? // 通知所有事件

};

UIButton的常見屬性設(shè)置方法

- (void)setTitle:(NSString *)title forState:(UIControlState)state;//設(shè)置按鈕的文字

- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;//設(shè)置按鈕的文字顏色

- (void)setImage:(UIImage *)image forState:(UIControlState)state; //設(shè)置按鈕內(nèi)部的小圖片

- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;//設(shè)置按鈕的背景圖片

btn.titleLabel.font = [UIFont systemFontOfSize:13];//設(shè)置按鈕的文字字體(需要拿到按鈕內(nèi)部的label來設(shè)置)

- (NSString *)titleForState:(UIControlState)state; //獲得按鈕的文字

- (UIColor *)titleColorForState:(UIControlState)state;//獲得按鈕的文字顏色

- (UIImage *)imageForState:(UIControlState)state;//獲得按鈕內(nèi)部的小圖片

- (UIImage *)backgroundImageForState:(UIControlState)state;//獲得按鈕的背景圖片

圖片發(fā)自簡書App
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末强法,一起剝皮案震驚了整個(gè)濱河市扒寄,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拟烫,老刑警劉巖该编,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異硕淑,居然都是意外死亡课竣,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門置媳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來于樟,“玉大人,你說我怎么就攤上這事拇囊∮厍” “怎么了?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵寥袭,是天一觀的道長路捧。 經(jīng)常有香客問我,道長传黄,這世上最難降的妖魔是什么杰扫? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮膘掰,結(jié)果婚禮上章姓,老公的妹妹穿的比我還像新娘。我一直安慰自己识埋,他們只是感情好凡伊,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著窒舟,像睡著了一般系忙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上辜纲,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天笨觅,我揣著相機(jī)與錄音,去河邊找鬼耕腾。 笑死见剩,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的扫俺。 我是一名探鬼主播苍苞,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了羹呵?” 一聲冷哼從身側(cè)響起骂际,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎冈欢,沒想到半個(gè)月后歉铝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡凑耻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年太示,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片香浩。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡类缤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出邻吭,到底是詐尸還是另有隱情餐弱,我是刑警寧澤,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布囱晴,位于F島的核電站膏蚓,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏速缆。R本人自食惡果不足惜降允,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望艺糜。 院中可真熱鬧,春花似錦幢尚、人聲如沸破停。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽真慢。三九已至,卻和暖如春理茎,著一層夾襖步出監(jiān)牢的瞬間黑界,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工皂林, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留朗鸠,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓础倍,卻偏偏與公主長得像烛占,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

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