Skip to content

Instantly share code, notes, and snippets.

View kishikawakatsumi's full-sized avatar
🏠
Working from home

Kishikawa Katsumi kishikawakatsumi

🏠
Working from home
View GitHub Profile
//
// HTTPLoader.h
//
#import <Foundation/Foundation.h>
typedef void(^ HTTPLoaderCompletionBlock)(NSData *data, NSError *erorr);
@interface HTTPLoader : NSObject
@kishikawakatsumi
kishikawakatsumi / gist:3024000
Created June 30, 2012 14:30
Find View Controller placed a view
- (UIViewController *)viewControllerForView:(UIView *)view {
UIResponder *nextResponder = [view nextResponder];
if (nextResponder) {
if ([nextResponder isKindOfClass:[UIViewController class]]) {
return (UIViewController *)nextResponder;
} else {
return [self viewControllerForView:view.superview];
}
}
return nil;
@kishikawakatsumi
kishikawakatsumi / gist:3023923
Created June 30, 2012 14:26
Rotation manually
- (void)didRotate:(NSNotification *)notification {
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
UIView *portraitClockView = portraitClockViewController.view;
UIView *landscapeClockView = landscapeClockViewController.view;
if (orientation == UIDeviceOrientationLandscapeLeft) {
CGAffineTransform transform = CGAffineTransformMakeRotation(M_PI / 2.0f);
// landscapeClockView.center = CGPointMake(240.0f, 160.0f);
landscapeClockView.transform = transform;
#import "SDTableViewCell.h"
@implementation SDTableViewCell
@synthesize iconView;
@synthesize indicatorView;
@synthesize titleLabel;
- (void)dealloc {
[iconView removeObserver:self forKeyPath:@"image"];
@kishikawakatsumi
kishikawakatsumi / gist:2757488
Created May 20, 2012 09:32
merge managed context in CoreData
// バックグラウンドでGoogle Calendarからイベントを受信して保存するクラス
- (void)main {
if (!self.isCancelled) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
if (!self.isCancelled) {
NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
[managedObjectContext setMergePolicy:NSMergeByPropertyObjectTrumpMergePolicy];
SPEventStore *eventStore = [SPEventStore defaultEventStore];
events = [[eventStore searchEventsWithPredicate:predicate] retain];
}
@kishikawakatsumi
kishikawakatsumi / gist:2308343
Created April 5, 2012 06:00
re-sign ipa(iOS App) file.
#!/bin/bash
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
codesign -f -s "iPhone Developer" "$1"
@kishikawakatsumi
kishikawakatsumi / gist:2219235
Created March 27, 2012 18:59
Reflection C function call by ffi
#include <stdio.h>
#include <dlfcn.h>
#include "ffi.h"
int main(int argc, char *argv[])
{
void *dlh = dlopen(argv[0], RTLD_LAZY);
void *fp = dlsym(dlh, "puts");
ffi_cif cif;
@kishikawakatsumi
kishikawakatsumi / gist:2217051
Created March 27, 2012 15:32
Reflection C function call by ffcall
#include <stdio.h>
#include <dlfcn.h>
#include <avcall.h>
int main(int argc, char *argv[]) {
int ret;
av_alist alist;
void *dlh;
void *fp;
@kishikawakatsumi
kishikawakatsumi / ImageUpload.m
Created November 23, 2011 15:13
Upload image to Twitter with OAuth
#define DATA(str) [(NSString*)(str) dataUsingEncoding:NSUTF8StringEncoding]
- (NSData *)generateFormData:(NSDictionary *)dictionary boundary:(NSString *)boundary {
NSMutableData *data = [[NSMutableData alloc] init];
id key;
NSEnumerator *enumerator = [dictionary keyEnumerator];
while (key = [enumerator nextObject]) {
id value = [dictionary valueForKey:key];
[data appendData:DATA(([NSString stringWithFormat:@"--%@\r\n", boundary]))];
@implementation UIImage(Utilities)
- (CGRect)convertCropRect:(CGRect)cropRect {
UIImage *originalImage = self;
CGSize size = originalImage.size;
CGFloat x = cropRect.origin.x;
CGFloat y = cropRect.origin.y;
CGFloat width = cropRect.size.width;
CGFloat height = cropRect.size.height;