[objective-c]UILabelのテキストを省略しない
UILabelのテキストを省略しない
label.lineBreakMode = NSLineBreakByClipping;
UILabelのテキストを省略しない
label.lineBreakMode = NSLineBreakByClipping;
UIWebViewのhtmlにUIImageをimgタグで表示
NSData *imageData = UIImagePNGRepresentation(image); NSString* base64 = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding76CharacterLineLength]; base64 = [base64 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSString*js = [NSString stringWithFormat:@"var img=document.createElement('img');img.src='data:image/jpg;base64,%@';document.body.appendChild(img);",base64]; [mainWebView stringByEvaluatingJavaScriptFromString:js];
UIWebViewでリンククリックで処理
読み込むhtml
<!DOCTYPE html> <html> <head> </head> <body> <a href="js-call://camera">camera</a><br/><br/> <a href="js-call://album">album</a><br/><br/> <a href="js-call://alert">alert</a><br/><br/> </body> </html>
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { NSLog(@"shouldStartLoadWithRequest"); NSString *requestString = [[request URL] absoluteString]; NSString *protocol = @"js-call://"; if ([requestString hasPrefix:protocol]) { NSString *requestContent = [requestString substringFromIndex:[protocol length]]; NSArray *vals = [requestContent componentsSeparatedByString:@"/"]; if ([vals[0] isEqualToString:@"camera"]){ [self startCamera];//カメラ起動 }else if ([vals[0] isEqualToString:@"album"]){ [self startAlbum];//カメラロール起動 }else { [webView stringByEvaluatingJavaScriptFromString:@"alert('Not defined');"];//jsのalert実行 } return NO; } return YES; }
XCode6でDeploymentTarget:ios7で3.5インチで表示されてしまうときの解決方法
1)プロジェクト名クリック
2)Generalタブ
3)App Icons and Launch Imagesの「Use Asset Catalog」-> 「migrate」
DropboxにGitリモートリポジトリを作る
1) gitインストール
2) ターミナルで
「cd /Users/ユーザ名/Dropbox/git/プロジェクト名」
「git –bare init」
3) XCodeで対象プロジェクトを開く
4) Source Control -> プロジェクト名 – master -> Configure プロジェクト名
5) Remotesクリック
6) 左下+ -> Add Remote
7) Nameに任意の名前 Addresに「/Users/ユーザ名/Dropbox/git/プロジェクト名」を入力後「Add Remote」
8) Source Control -> Commit CommitMessageを入力して左下「Push to remote」チェック
UIViewをUIImageへ(Retina対応)
-(UIImage*)getUIImageByUIView:(UIView*)view { UIImage *screenImage; //UIGraphicsBeginImageContext(size); UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0); [view.layer renderInContext:UIGraphicsGetCurrentContext()]; screenImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return screenImage; }
不可視ファイルを表示
1)ターミナル
defaults write com.apple.finder AppleShowAllFiles TRUE
2)Finder再起動
killall Finder
formの値を受け取る
#!/usr/bin/ruby-1.9.3 # coding: utf-8 require 'cgi' puts "Content-type: text/plain\n\n" cgi = CGI.new keys=cgi.keys keys.each{|value| puts value+" = "+cgi[value]+"\n" }
ファイルを読み込む
#!/usr/bin/ruby-1.9.3 # coding: utf-8 require 'json' puts "Content-type: application/json\n\n" filename="test.txt" results=Array.new if File.exist?(filename) f = open(filename) f.each{|line| results.push(line.force_encoding("utf-8")) } f.close else results.push("no data") end puts JSON.generate({'time'=>Time.now.strftime("%Y-%m-%d %H:%M:%S"), 'data'=>results})
MySQLからデータ取得
#!/usr/bin/ruby-1.9.3 # coding: utf-8 require 'json' require 'mysql' puts "Content-type: application/json\n\n" connection = Mysql.connect('host','user','password','db name') connection.query("set character set utf8") #文字化けするとき columns=["ID","post_title","post_date"] result = connection.query("SELECT "+columns.join(",")+" FROM wp_posts WHERE post_status='publish' ORDER BY ID DESC LIMIT 5") connection.close results=Array.new result.each {|record| w = {} record.each_with_index{|val,i| key = columns[i] w[key.force_encoding("utf-8")]=val.force_encoding("utf-8") #文字化けするときforce_encoding } results.push(w) } puts JSON.generate({'time'=>Time.now.strftime("%Y-%m-%d %H:%M:%S"), 'data'=>results})