1场靴、工作中常用小技巧

  • 1、UITableView的Plain樣式下底部多余行處理
  關(guān)鍵代碼
    //高度可自調(diào)
    UIView *vi = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kScreen_Width, kScreen_Height)];
    vi.backgroundColor = [UIColor whiteColor]; //顏色也可調(diào),最好還是按照軟件主題色調(diào)來(lái)選
    self.tableView.tableFooterView = vi; 
  • 2 旨剥、獲取某個(gè)View所在的控制器
- (UIViewController *)viewController
{
     UIViewController *viewController = nil;  
     UIResponder *next = self.nextResponder;
     while (next)
    {
          if ([next isKindOfClass:[UIViewController class]])
        {
              viewController = (UIViewController *)next;      
              break;    
        }    
        next = next.nextResponder;  
   } 
    return viewController;
}
  • 3咧欣、清空NSUserDefaults所有記錄
//方法一
NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];


//方法二
- (void)resetDefaults
{
    NSUserDefaults * defs = [NSUserDefaults standardUserDefaults];
    NSDictionary * dict = [defs dictionaryRepresentation];
    for (id key in dict)
    {
        [defs removeObjectForKey:key];
    }
    [defs synchronize];
}

  • 4、打印系統(tǒng)所有已注冊(cè)的字體名稱
#pragma mark - 打印系統(tǒng)所有已注冊(cè)的字體名稱
void enumerateFonts()
{
    for(NSString *familyName in [UIFont familyNames])
   {
        NSLog(@"%@",familyName);               
        NSArray *fontNames = [UIFont fontNamesForFamilyName:familyName];       
        for(NSString *fontName in fontNames)
       {
            NSLog(@"\t|- %@",fontName);
       }
   }
}
  • 5泞边、獲取圖片某一點(diǎn)的顏色
- (UIColor*) getPixelColorAtLocation:(CGPoint)point inImage:(UIImage *)image
{

    UIColor* color = nil;
    CGImageRef inImage = image.CGImage;
    CGContextRef cgctx = [self createARGBBitmapContextFromImage:inImage];

    if (cgctx == NULL)
    {
        return nil; /* error */
    }
    size_t w = CGImageGetWidth(inImage);
    size_t h = CGImageGetHeight(inImage);
    CGRect rect = {{0,0},{w,h}};
    CGContextDrawImage(cgctx, rect, inImage);
    unsigned char* data = CGBitmapContextGetData (cgctx);
    if (data != NULL) 
    {
        int offset = 4*((w*round(point.y))+round(point.x));
        int alpha =  data[offset];
        int red = data[offset+1];
        int green = data[offset+2];
        int blue = data[offset+3];
        color = [UIColor colorWithRed:(red/255.0f) green:(green/255.0f) blue:
                 (blue/255.0f) alpha:(alpha/255.0f)];
    }
    CGContextRelease(cgctx);
    if (data) 
    {
        free(data);
    }
    return color;
}
  • 6 该押、字符串反轉(zhuǎn)
第一種:
- (NSString *)reverseWordsInString:(NSString *)str
{    
    NSMutableString *newString = [[NSMutableString alloc] initWithCapacity:str.length];
    for (NSInteger i = str.length - 1; i >= 0 ; i --)
    {
        unichar ch = [str characterAtIndex:i];       
        [newString appendFormat:@"%c", ch];    
    }    
     return newString;
}

//第二種:
- (NSString*)reverseWordsInString:(NSString*)str
{    
     NSMutableString *reverString = [NSMutableString stringWithCapacity:str.length];    
     [str enumerateSubstringsInRange:NSMakeRange(0, str.length) options:NSStringEnumerationReverse | NSStringEnumerationByComposedCharacterSequences  usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) { 
          [reverString appendString:substring];                         
      }];    
     return reverString;
}
  • 7、禁止鎖屏

默認(rèn)情況下阵谚,當(dāng)設(shè)備一段時(shí)間沒(méi)有觸控動(dòng)作時(shí)蚕礼,iOS會(huì)鎖住屏幕。但有一些應(yīng)用是不需要鎖屏的梢什,比如視頻播放器奠蹬。

[UIApplication sharedApplication].idleTimerDisabled = YES; 或
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];

  • 8、模態(tài)推出透明界面
 UIViewController *vc = [[UIViewController alloc] init];
UINavigationController *na = [[UINavigationController alloc] initWithRootViewController:vc];

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
{
     na.modalPresentationStyle = UIModalPresentationOverCurrentContext;
}
else
{
     self.modalPresentationStyle = UIModalPresentationCurrentContext;
}

[self presentViewController:na animated:YES completion:nil];
  • 9嗡午、字符串按多個(gè)符號(hào)分割
 //原始字符串
    NSString *str = @"abc,veh.lslsl,eee";
    NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@",."]; //"分割的字符串是",.""
    NSArray *arr = [str componentsSeparatedByCharactersInSet:set];
    [arr enumerateObjectsUsingBlock:^(NSString  * obj, NSUInteger idx, BOOL * _Nonnull stop) {
        NSLog(@" obj -- %@",obj);
        //打印如下
//         obj -- abc
//         obj -- veh
//         obj -- lslsl
//         obj -- eee
    }];
  • 10囤躁、iOS應(yīng)用跳轉(zhuǎn)到指定URL
  NSURL *url = [NSURL URLWithString:@"您APP在應(yīng)用商店的地址"];

    //iOS 10以前
    //    [[UIApplication sharedApplication] openURL:url];

    //iOS10之后
    NSDictionary *dict = @{@"key":@"value"}; //用于對(duì)象間通信
    [[UIApplication sharedApplication] openURL:url options:dict completionHandler:^(BOOL success) {
        //打開(kāi)成功之后會(huì)回到主線程
        NSLog(@"當(dāng)前線程 ... %@",[NSThread currentThread]);
    }];
  • 11、iOS 獲取漢字的拼音
 - (NSString *)transform:(NSString *)chinese
{
    //將NSString裝換成NSMutableString
    NSMutableString *pinyin = [chinese mutableCopy];
    //將漢字轉(zhuǎn)換為拼音(帶音標(biāo))
    CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformMandarinLatin, NO);

    NSLog(@"%@", pinyin);
    //去掉拼音的音標(biāo)
    CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformStripCombiningMarks, NO);
    NSLog(@"%@", pinyin);
    //返回最近結(jié)果
    return pinyin;
}

  • 12 荔睹、手動(dòng)更改iOS狀態(tài)欄的顏色
- (void)setStatusBarBackgroundColor:(UIColor *)color
{
    UIView *statusBar = [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey:@"statusBar"];

    if ([statusBar respondsToSelector:@selector(setBackgroundColor:)])
    {
        statusBar.backgroundColor = color;    
    }
}

  • 13 狸演、判斷當(dāng)前ViewController是push還是present的方式顯示的
NSArray *viewcontrollers = self.navigationController.viewControllers;
if (viewcontrollers.count > 1)
{
    if ([viewcontrollers objectAtIndex:viewcontrollers.count - 1] == self)
    {
        //push方式
       [self.navigationController popViewControllerAnimated:YES];
    }
}
else
{
    //present方式
    [self dismissViewControllerAnimated:YES completion:nil];
}
  • 14 、獲取實(shí)際使用的LaunchImage圖片
- (NSString *)getLaunchImageName
{
    CGSize viewSize = self.window.bounds.size;
    // 豎屏    
    NSString *viewOrientation = @"Portrait";  
    NSString *launchImageName = nil;    
    NSArray* imagesDict = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"UILaunchImages"];
    for (NSDictionary* dict in imagesDict)
    {
        CGSize imageSize = CGSizeFromString(dict[@"UILaunchImageSize"]);
        if (CGSizeEqualToSize(imageSize, viewSize) && [viewOrientation isEqualToString:dict[@"UILaunchImageOrientation"]])
        {
            launchImageName = dict[@"UILaunchImageName"];        
        }    
    }    
    return launchImageName;
}
  • 15 僻他、iOS在當(dāng)前屏幕獲取第一響應(yīng)
UIWindow * keyWindow = [[UIApplication sharedApplication] keyWindow];
UIView * firstResponder = [keyWindow performSelector:@selector(firstResponder)];

  • 16 宵距、判斷對(duì)象是否遵循了某協(xié)議
if ([self.selectedController conformsToProtocol:@protocol(RefreshPtotocol)])
{
    [self.selectedController performSelector:@selector(onTriggerRefresh)];
}
  • 17 、判斷view是不是指定視圖的子視圖
BOOL isView = [textView isDescendantOfView:self.view];
  • 18 吨拗、修改UITextField中Placeholder的文字顏色
[textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];


  • 19 满哪、關(guān)于NSDateFormatter的格式
G: 公元時(shí)代,例如AD公元
yy: 年的后2位
yyyy: 完整年
MM: 月劝篷,顯示為1-12
MMM: 月哨鸭,顯示為英文月份簡(jiǎn)寫(xiě),如 Jan
MMMM: 月,顯示為英文月份全稱娇妓,如 Janualy
dd: 日像鸡,2位數(shù)表示,如02
d: 日哈恰,1-2位顯示坟桅,如 2
EEE: 簡(jiǎn)寫(xiě)星期幾,如Sun
EEEE: 全寫(xiě)星期幾蕊蝗,如Sunday
aa: 上下午,AM/PM
H: 時(shí)赖舟,24小時(shí)制蓬戚,0-23
K:時(shí),12小時(shí)制宾抓,0-11
m: 分子漩,1-2位
mm: 分豫喧,2位
s: 秒,1-2位
ss: 秒幢泼,2位
S: 毫秒
  • 20 紧显、獲取一個(gè)類的所有子類
+ (NSArray *) allSubclasses
{
    Class myClass = [self class];
    NSMutableArray *mySubclasses = [NSMutableArray array];
    unsigned int numOfClasses;
    Class *classes = objc_copyClassList(&numOfClasses;);
    for (unsigned int ci = 0; ci < numOfClasses; ci++)
    {
        Class superClass = classes[ci];
        do{
            superClass = class_getSuperclass(superClass);
        } while (superClass && superClass != myClass);

        if (superClass)
        {
            [mySubclasses addObject: classes[ci]];
        }
    }
    free(classes);
    return mySubclasses;
}
  • 21、監(jiān)測(cè)IOS設(shè)備是否設(shè)置了代理缕棵,需要CFNetwork.framework
NSDictionary *proxySettings = (__bridge NSDictionary *)(CFNetworkCopySystemProxySettings());
NSArray *proxies = (__bridge NSArray *)(CFNetworkCopyProxiesForURL((__bridge CFURLRef _Nonnull)([NSURL URLWithString:@"http://www.baidu.com"]), (__bridge CFDictionaryRef _Nonnull)(proxySettings)));
NSLog(@"\n%@",proxies);

NSDictionary *settings = proxies[0];
NSLog(@"%@",[settings objectForKey:(NSString *)kCFProxyHostNameKey]);
NSLog(@"%@",[settings objectForKey:(NSString *)kCFProxyPortNumberKey]);
NSLog(@"%@",[settings objectForKey:(NSString *)kCFProxyTypeKey]);

if ([[settings objectForKey:(NSString *)kCFProxyTypeKey] isEqualToString:@"kCFProxyTypeNone"])
{
    NSLog(@"沒(méi)代理");
}
else
{
    NSLog(@"設(shè)置了代理");
}

  • 22孵班、阿拉伯?dāng)?shù)字轉(zhuǎn)中文格式
  
+(NSString *)translation:(NSString *)arebic
{
    NSString *str = arebic;
    NSArray *arabic_numerals = @[@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"0"];
    NSArray *chinese_numerals = @[@"一",@"二",@"三",@"四",@"五",@"六",@"七",@"八",@"九",@"零"];
    NSArray *digits = @[@"個(gè)",@"十",@"百",@"千",@"萬(wàn)",@"十",@"百",@"千",@"億",@"十",@"百",@"千",@"兆"];
    NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:chinese_numerals forKeys:arabic_numerals];

    NSMutableArray *sums = [NSMutableArray array];
    for (int i = 0; i < str.length; i ++) {
        NSString *substr = [str substringWithRange:NSMakeRange(i, 1)];
        NSString *a = [dictionary objectForKey:substr];
        NSString *b = digits[str.length -i-1];
        NSString *sum = [a stringByAppendingString:b];
        if ([a isEqualToString:chinese_numerals[9]])
        {
            if([b isEqualToString:digits[4]] || [b isEqualToString:digits[8]])
            {
                sum = b;
                if ([[sums lastObject] isEqualToString:chinese_numerals[9]])
                {
                    [sums removeLastObject];
                }
            }else
            {
                sum = chinese_numerals[9];
            }

            if ([[sums lastObject] isEqualToString:sum])
            {
                continue;
            }
        }

        [sums addObject:sum];
    }

    NSString *sumStr = [sums componentsJoinedByString:@""];
    NSString *chinese = [sumStr substringToIndex:sumStr.length-1];
    NSLog(@"%@",str);
    NSLog(@"%@",chinese);
    return chinese;
}  

  • 23 、取消UICollectionView的隱式動(dòng)畫(huà)
下面幾種方法都可以幫你去除這些動(dòng)畫(huà)

UICollectionView在reloadItems的時(shí)候招驴,默認(rèn)會(huì)附加一個(gè)隱式的fade動(dòng)畫(huà)篙程,有時(shí)候很討厭,尤其是當(dāng)你的cell是復(fù)合cell的情況下(比如cell使用到了UIStackView)别厘。

//方法一
[UIView performWithoutAnimation:^{
    [collectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:index inSection:0]]];
}];

//方法二
[UIView animateWithDuration:0 animations:^{
    [collectionView performBatchUpdates:^{
        [collectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:index inSection:0]]];
    } completion:nil];
}];

//方法三
[UIView setAnimationsEnabled:NO];
[self.trackPanel performBatchUpdates:^{
    [collectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:index inSection:0]]];
} completion:^(BOOL finished) {
    [UIView setAnimationsEnabled:YES];
}];
  • 24 虱饿、GCD timer定時(shí)器
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue);
dispatch_source_set_timer(timer,dispatch_walltime(NULL, 0),1.0*NSEC_PER_SEC, 0); //每秒執(zhí)行
dispatch_source_set_event_handler(timer, ^{
    //@"倒計(jì)時(shí)結(jié)束,關(guān)閉"
    dispatch_source_cancel(timer);
    dispatch_async(dispatch_get_main_queue(), ^{

    });
});
dispatch_resume(timer);

  • 25 触趴、計(jì)算文件大小

//文件大小
- (long long)fileSizeAtPath:(NSString *)path
{
    NSFileManager *fileManager = [NSFileManager defaultManager];

    if ([fileManager fileExistsAtPath:path])
    {
        long long size = [fileManager attributesOfItemAtPath:path error:nil].fileSize;
        return size;
    }

    return 0;
}


//文件夾大小
- (long long)folderSizeAtPath:(NSString *)path
{
    NSFileManager *fileManager = [NSFileManager defaultManager];

    long long folderSize = 0;

    if ([fileManager fileExistsAtPath:path])
    {
        NSArray *childerFiles = [fileManager subpathsAtPath:path];
        for (NSString *fileName in childerFiles)
        {
            NSString *fileAbsolutePath = [path stringByAppendingPathComponent:fileName];
            if ([fileManager fileExistsAtPath:fileAbsolutePath])
            {
                long long size = [fileManager attributesOfItemAtPath:fileAbsolutePath error:nil].fileSize;
                folderSize += size;
            }
        }
    }

    return folderSize;
}

  • 26 氮发、UIView設(shè)置部分圓角

 你是不是也遇到過(guò)這樣的問(wèn)題,一個(gè)button或者label冗懦,只要右邊的兩個(gè)角圓角爽冕,或者只要一個(gè)圓角。該怎么辦呢批狐。這就需要圖層蒙版來(lái)幫助我們了
CGRect rect = view.bounds;
CGSize radio = CGSizeMake(30, 30);//圓角尺寸
UIRectCorner corner = UIRectCornerTopLeft|UIRectCornerTopRight;//這只圓角位置
UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:rect byRoundingCorners:corner cornerRadii:radio];
CAShapeLayer *masklayer = [[CAShapeLayer alloc]init];//創(chuàng)建shapelayer
masklayer.frame = view.bounds;
masklayer.path = path.CGPath;//設(shè)置路徑
view.layer.mask = masklayer;  

  • 27 扇售、去掉導(dǎo)航欄返回的back標(biāo)題
    [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60)forBarMetrics:UIBarMetricsDefault];

  • 28 、字符串中是否含有中文

+ (BOOL)checkIsChinese:(NSString *)string
{
    for (int i=0; i<string.length; i++)
    {
        unichar ch = [string characterAtIndex:i];
        if (0x4E00 <= ch  && ch <= 0x9FA5)
        {
            return YES;
        }
    }
    return NO;
}


  • 29 嚣艇、判斷兩個(gè)日期是否在同一周 寫(xiě)在NSDate的category里面

- (BOOL)isSameDateWithDate:(NSDate *)date
{
    //日期間隔大于七天之間返回NO
    if (fabs([self timeIntervalSinceDate:date]) >= 7 * 24 *3600)
    {
        return NO;
    }

    NSCalendar *calender = [NSCalendar currentCalendar];
    calender.firstWeekday = 2;//設(shè)置每周第一天從周一開(kāi)始
    //計(jì)算兩個(gè)日期分別為這年第幾周
    NSUInteger countSelf = [calender ordinalityOfUnit:NSCalendarUnitWeekday inUnit:NSCalendarUnitYear forDate:self];
    NSUInteger countDate = [calender ordinalityOfUnit:NSCalendarUnitWeekday inUnit:NSCalendarUnitYear forDate:date];

    //相等就在同一周承冰,不相等就不在同一周
    return countSelf == countDate;
}


  • 30 、獲取手機(jī)安裝的應(yīng)用

Class c =NSClassFromString(@"LSApplicationWorkspace");
id s = [(id)c performSelector:NSSelectorFromString(@"defaultWorkspace")];
NSArray *array = [s performSelector:NSSelectorFromString(@"allInstalledApplications")];
for (id item in array)
{
    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"applicationIdentifier")]);
    //NSLog(@"%@",[item performSelector:NSSelectorFromString(@"bundleIdentifier")]);
    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"bundleVersion")]);
    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"shortVersionString")]);
}


  • 31 食零、 navigationBar變?yōu)榧兺该?/li>
//第一種方法
//導(dǎo)航欄純透明
[self.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
//去掉導(dǎo)航欄底部的黑線
self.navigationBar.shadowImage = [UIImage new];

//第二種方法
[[self.navigationBar subviews] objectAtIndex:0].alpha = 0;

tabBar同理

[self.tabBar setBackgroundImage:[UIImage new]];
self.tabBar.shadowImage = [UIImage new];

  • 32 困乒、navigationBar根據(jù)滑動(dòng)距離的漸變色實(shí)現(xiàn)
//第一種
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat offsetToShow = 200.0;//滑動(dòng)多少就完全顯示
    CGFloat alpha = 1 - (offsetToShow - scrollView.contentOffset.y) / offsetToShow;
    [[self.navigationController.navigationBar subviews] objectAtIndex:0].alpha = alpha;
}

//第二種
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat offsetToShow = 200.0;
    CGFloat alpha = 1 - (offsetToShow - scrollView.contentOffset.y) / offsetToShow;

    [self.navigationController.navigationBar setShadowImage:[UIImage new]];
    [self.navigationController.navigationBar setBackgroundImage:[self imageWithColor:[[UIColor orangeColor]colorWithAlphaComponent:alpha]] forBarMetrics:UIBarMetricsDefault];
}

  • 33 //生成一張純色的圖片
- (UIImage *)imageWithColor:(UIColor *)color
{
    CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
    UIGraphicsBeginImageContext(rect.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [color CGColor]);
    CGContextFillRect(context, rect);
    UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return theImage;
}
  • 34 、相關(guān)路徑

iOS 開(kāi)發(fā)中一些相關(guān)的路徑
模擬器的位置:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs
文檔安裝位置:
/Applications/Xcode.app/Contents/Developer/Documentation/DocSets
插件保存路徑:
~/Library/ApplicationSupport/Developer/Shared/Xcode/Plug-ins
自定義代碼段的保存路徑:
~/Library/Developer/Xcode/UserData/CodeSnippets/
如果找不到CodeSnippets文件夾贰谣,可以自己新建一個(gè)CodeSnippets文件夾娜搂。
描述文件路徑
~/Library/MobileDevice/Provisioning Profiles
navigationItem的BarButtonItem如何緊靠屏幕右邊界或者左邊界?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末吱抚,一起剝皮案震驚了整個(gè)濱河市百宇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌秘豹,老刑警劉巖携御,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡啄刹,警方通過(guò)查閱死者的電腦和手機(jī)涮坐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)誓军,“玉大人袱讹,你說(shuō)我怎么就攤上這事£鞘保” “怎么了捷雕?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)债查。 經(jīng)常有香客問(wèn)我非区,道長(zhǎng),這世上最難降的妖魔是什么盹廷? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任征绸,我火速辦了婚禮,結(jié)果婚禮上俄占,老公的妹妹穿的比我還像新娘管怠。我一直安慰自己,他們只是感情好缸榄,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布渤弛。 她就那樣靜靜地躺著,像睡著了一般甚带。 火紅的嫁衣襯著肌膚如雪她肯。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,274評(píng)論 1 300
  • 那天鹰贵,我揣著相機(jī)與錄音晴氨,去河邊找鬼。 笑死碉输,一個(gè)胖子當(dāng)著我的面吹牛籽前,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播敷钾,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼枝哄,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了阻荒?” 一聲冷哼從身側(cè)響起挠锥,我...
    開(kāi)封第一講書(shū)人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎侨赡,沒(méi)想到半個(gè)月后瘪贱,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體纱控,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年菜秦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片舶掖。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡球昨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出眨攘,到底是詐尸還是另有隱情主慰,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布鲫售,位于F島的核電站共螺,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏情竹。R本人自食惡果不足惜藐不,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望秦效。 院中可真熱鬧雏蛮,春花似錦、人聲如沸阱州。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)苔货。三九已至犀概,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間夜惭,已是汗流浹背姻灶。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留滥嘴,地道東北人木蹬。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像若皱,于是被迫代替她去往敵國(guó)和親镊叁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354

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