なかじまの開発ブログ

アプリ開発における備忘録などなど。

MENU

Objective-C

UIScrollViewに追加されたボタンが反応しないときにすること【Objective-C】

UIScrollViewのdelaysContentTouchesをNOにするとボタンが反応するようになります。 scrollview.delaysContentTouches = NO; こちらもどうぞ nsdevelop.hatenablog.com

UITableViewのスクロールをボタンで制御する【Objective-C】

Objective-Cが終わりつつあると感じているなかじまです(´・ω・`)今回はUITableViewのスクロールをUIButtonで制御しつつ、セルの表示に合わせてボタンの表示非表示も一緒にメモします!storyboardのUIViewにUITableViewとUIButtonを2つ設置します。設置したU…

画面起動時にTextFieldを選択された状態にする【Objective-C】

Outlet接続などでUITextFieldを用意。『.h』 @property (weak, nonatomic) IBOutlet UITextField *textField; 起動時に実行されるメソッド内に下記を入力 // textFieldを選択状態にする [textField becomeFirstResponder]; 『.m』 @synthesize textField; //…

指定した秒数後にメソッドを実行する【Objective-C】

3秒遅らせてメソッドを実行させたい場合、次のようにします。 - (void)ahan { NSLog("あ"); } - (void)viewDidLoad { [super viewDidLoad]; // 3秒後にahanメソッドを実行 [self performSelector:@selector(ahan) withObject:nil afterDelay:3.0]; } これだ…

1つの配列のソートに合わせて、もう1つの配列の順番も変える【Objective-C】

2つの配列を用意。 NSArray *array1 = [NSArray arrayWithObjects:@"さしすせそ", @"かきくけこ", @"あいうえお", @"なにぬねの", @"たちつてと", nil]; NSArray *array2 = [NSArray arrayWithObjects:@"3行目", @"2行目", @"1行目", @"5行目", @"4行目", n…

DropBox Core APIを使おう【Objective-C】

データを同期するのに使えます! アプリの登録 下記URLからサインインをしてください。 Dropbox - Sign in『My Apps』の『Create app』から登録します。1.Choose an API Dropbox APIを選択します。2.Choose the type of accsess you need 全てのアクセスを許…

UITabBarでUIViewControllerを切り替える【Objective-C】

準備 ViewControllerの表示したい場所にUITabBarを設置してください。設置したUITabBarは『ViewController.h』にOutlet接続(名前:tabBar)してください。 そしてTabBarのアイテムと同じ数のViewControllerをInterfaceBuilderに設置してください。そして各View…

UDP通信で送信、受信、タイムアウト処理【Objective-C】

#import <sys/socket.h> #import <netinet/in.h> #import <arpa/inet.h> #import <sys/types.h> bool readflag; // 受信したかどうか 初期値はfalseを代入しておく 送信 // 送信 - (void)dataSend:(NSString *)text { char *cstr = (char *)[text UTF8String]; // 送信したいテキストをchar型に変換 // ソケットの作</sys/types.h></arpa/inet.h></netinet/in.h></sys/socket.h>…

音楽の再生、一時停止、停止【Objective-C】

AVFoundationをインポート #import <AVFoundation/AVFoundation.h> 音楽の読み込み NSURL *apUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"ファイル名" ofType@"拡張子(mp3など)"]]; AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsO</avfoundation/avfoundation.h>…

オリジナルのフォントを使うときにすること【Objective-C】

①好きなフォントをダウンロードし、PCにインストールする。②フォントファイルをプロジェクト内に入れる。③プロジェクトのTARGETS→Info→Custom iOS Target Propertiesに『Fonts provided by application』を追加する。④Itemに追加した『フォント名.拡張子』を…

transformを使って色々アニメーションまとめ【Objective-C】

CGAffineTransformを使ってアニメーション(移動・回転・拡大縮小)しよう! 移動 // 現在の位置からX軸に100, Y軸に200移動 view.transform = CGAffineTransformMakeTranslation(100, 200); // Affine変換された後の位置からX軸に100, Y軸に200移動 view.tr…

UINavigationControllerの画面遷移でModalのようなアニメーションに変更する

前回の記事をちょこっと修正、追加。 - (IBAction)nextBtnTap:(id)sender { CATransition *transition = [CATransition animation]; transition.duration = 0.3; transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFuncti…

UINavigationControllerを使って、画面遷移をする【Objective-C】

最近 UINavigationController の便利さに気づきました。いっぱい画面遷移するアプリだと、UINavigationControllerを使うのがいいと思います。最初からある ViewController に実装する体で進めます。 では InterfaceBuilder に NavigationController を設置し…

ゲームの会話みたいにUITextViewに1つ1つ文字を表示する【Objective-C】

昔にどっかのサイトで見たコードを参考にして作りました。(サイト忘れた) タッチしたら文字が1つ1つ表示されて、表示中にもう一度タッチすると文章が全部表示されます。 適当にInterface BuilderにUITextViewを設置しまして、Outlet接続(名前:textView…

NSMutableArray - NSUserDefaults保存・読み込み・削除・削除確認【Objective-C】

NSMutableArray *marray = [NSMutableArray array]; 保存 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [marray addObject:@"a"]; NSData *marrayData = [NSKeyedArchiver archivedDataWithRootObject:marray]; [defaults setObject:…

指定した月の日数を取得【Objective-C】

// 指定した月が何日あるかを取得する - (int)getdays:(NSInteger)year month:(NSInteger)month { NSDateComponents *comps = [[NSDateComponents alloc] init]; [comps setYear:year]; [comps setMonth:month]; NSCalendar *calendar = [NSCalendar current…

現在の時刻を取得する【Objective-C】

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { NSUInteger units = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond; NSDateComponents *comps </uitouch>…

NSStringを結合【Objective-C】

NSString *text1 = @"あいうえお"; NSString *text2 = @"かきくけこ"; NSString *text3 = [text1 stringByAppendingString:text2]; // 結合 NSLog(@"%@", text3);

iPhoneの音量ボタンの押下イベントを検出【Objective-C】

こちらに素晴らしいサイトがありました。frnk.hatenablog.jpしかし、deprecatedが多いためiOS7.0以降でも動くようにした記事を残します。こちらも参考にしました。 【iOS】【MPVolumeView】スライダー移動で音量を変更したときにシステムの音量表示のオーバ…

UITableViewをスクロールした際に、内容がかぶってしまうを解決【Objective-C】

参考サイト UITableViewのチェックマークがスクロールすると消えてしまう(15498)|teratail スクロールをして見えなくなったセルは、再利用のために情報がなくなってしまうようですね。なので、セル別に情報を保存することによって解決するようです。 カスタ…

UITableViewにオリジナルのセルを表示する【Objective-C】

Interface BuilderにUITableViewとセル追加用のUIButtonを設置。ViewController.hにUITableViewをOutlet接続(名前:_tableView)し、UIButtonはAction接続(名前:addBtnTap)してください。 次にオリジナルのセルを作る準備。CustomTableViewCellという名…

UIImageをパラパラマンガのようにアニメーションさせる【Objective-C】

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 32, 32)]; [self.view addSubview:imageView]; NSMutableArray *imageArray = [NSMutableArray array]; [imageArray addObject:[UIImage imageNamed:@"image1.png"]]; [i…

NSStringをchar*に変換【Objective-C】

メモメモ。 NSString *str = @"1234"; char *cr = (char *)[str UTF8String];

【Twitter】スコアなどのつぶやきにスクショを付ける【Objective-C】

『Social.framework』をXcodeに追加してください。 #import <Social/Social.h> #import <CoreGraphics/CoreGraphics.h> #import <QuartzCore/QuartzCore.h> ツイートボタンの押下処理部分に下記を記述 // スクショを撮る UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, 0.0f); CGContextRef context = UIGraphic</quartzcore/quartzcore.h></coregraphics/coregraphics.h></social/social.h>…

背景のスクロールをずらして奥行を作る【Objective-C】

タイトルが思いつきませんでした。前回のつづきみたいなものです。前回→UIScrollViewの移動量を取得【Objective-C】 - なかじまブログ 前回設置したUIScrollViewの下に、同じ大きさのUIScrollViewを設置。 そしてViewController.hにOutlet接続をします(名前…

UIScrollViewの移動量を取得【Objective-C】

Interface BuilderにUIScrollViewを設置。設置したUIScrollViewをViewController.hにOutlet接続(名前:scrollView)。 『ViewController.h』 @interface ViewController : UIViewController { float offsetX, offsetY; // UIScrollViewの初期オフセット flo…

NSString型の文字列を値に変換する【Objective-C】

今回は、よく使うint型に変換する方法だけ。(後々追加していくかも) NSString *text = @"12345"; int i = [text intValue]; // または、『text.intValue』 NSLog(@"%d", i); TextFieldに数字を入力して、その値を使いたいときに使えますね。

UIButtonのフォントを変更する【Objective-C】

メモメモ。 button.titleLabel.font = [UIFont fontWithName:@"" size:14]; titleLabel経由しなきゃなんですね。

複数のUIAlertViewのボタン押下処理を管理する【Objective-C】

『ViewController.h』 @interface ViewController : UIViewController <UIAlertViewDelegate> { UIAlertView *alertView1; UIAlertView *alertView2; } 『ViewController.m』 - (IBAction)Button1Tap:(id)sender { alertView1 = [[UIAlertView alloc] initWithTitle:nil message:@</uialertviewdelegate>…

スクリーンショットを取得し、表示する【Objective-C】

便利だなーと思ったのでメモ。Interface Builderに『撮影用のButton』と『スクリーンショット表示用のImageView』を設置。ImageViewはわかりやすく背景を灰色にしてます。 ModeはAspectFitにしました。次に、ViewController.hにUIButtonをAction接続(Shooti…