Skip to content

Instantly share code, notes, and snippets.

View 0oneo's full-sized avatar
😃
Go Li

0oneo 0oneo

😃
Go Li
  • 阿里本地生活
  • Shanghai
View GitHub Profile
@0oneo
0oneo / gist:72c7120ffd411a8a314b3db37b37216a
Created June 18, 2017 03:19
get all magnet links from a web page
$("a[href*='magnet']").map(function() {return this.href}).get().join("\n")
@0oneo
0oneo / UIScrollView with masonry
Last active October 12, 2017 12:38
vertical and Horizontal scrollview using masonry
@interface ViewController ()
@property (strong, nonatomic) UIScrollView* vScrollView;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
@0oneo
0oneo / bootstrap_pre_extra_blank.js
Created May 2, 2017 03:44
remove bootstrap extra blank caused by document outline
<script>
/*!
*** prettyPre ***/
(function( $ ) {
$.fn.prettyPre = function( method ) {
var defaults = {
ignoreExpression: /\s/ // what should be ignored?
@0oneo
0oneo / common_regular_expression.rb
Created February 3, 2016 07:09
some common used regular expression collected from the web
[\x{4e00}-\x{9fa5}] // used for match Chinese character | 用来匹配中文
@0oneo
0oneo / set view's background
Created November 18, 2013 16:04
set background of a view, see link
UIImage *image = [UIImage imageNamed:@"name.png"];
view.layer.contents = (id) image.CGImage;
// 如果需要背景透明加上下面这句
view.layer.backgroundColor = [UIColor clearColor].CGColor;
@0oneo
0oneo / add_hair_line.m
Last active December 25, 2015 12:13
add hairline to a view
//| ----------------------------------------------------------------------------
// Called when the view is about to be displayed. May be called more than
// once.
//
- (void)willMoveToWindow:(UIWindow *)newWindow {
// Use the layer shadow to draw a one pixel hairline under this view.
[self.layer setShadowOffset:CGSizeMake(0, 1.0f/UIScreen.mainScreen.scale)];
[self.layer setShadowRadius:0];
// UINavigationBar's hairline is adaptive, its properties change with
@0oneo
0oneo / NSDateFormatter's right usage
Created October 12, 2013 08:20
NSDateFormatter is not thread safe
// test code that generate the error
for (int i = 0; i < 1000; i++) {
NSDate *date= [NSDate date];
NSString *queueName = [NSString stringWithFormat:@"queue%i", i];
dispatch_queue_t testqueue = dispatch_queue_create([queueName cStringUsingEncoding:NSUTF8StringEncoding], NULL);
dispatch_async(testqueue, ^{
NSDateFormatter *ndf = [BXAppDelegate dateFormatter];
DDLogInfo(@"%@", [ndf stringFromDate:date]);
});
}
// pls check http://t.cn/z8ncg24
[CATransaction begin];
[CATransaction setCompletionBlock:^{
[weakself.tableView reloadData];
}];
[weakself.tableView beginUpdates];
[weakself.tableView deleteSections:indexSet withRowAnimation:UITableViewRowAnimationFade];
[weakself.tableView endUpdates];
[CATransaction commit];
NSArray *images = @[@"http://example.com/image1.png",
@"http://example.com/image2.png",
@"http://example.com/image3.png",
@"http://example.com/image4.png"];
dispatch_queue_t imageQueue = dispatch_queue_create("Image Queue",NULL);
for (NSString *urlString in images) {
dispatch_async(imageQueue, ^{
@0oneo
0oneo / .m
Created August 22, 2015 04:21
cancel dispatch after
//
// SpacemanBlocks.h
//
// Created by Jerry Jones on 12/11/11.
// Copyright (c) 2011 Spaceman Labs. All rights reserved.
//
#import <Foundation/Foundation.h>
typedef void(^SMDelayedBlockHandle)(BOOL cancel);