タグ

ブックマーク / www.niw.at (3)

  • niw.at — iOS で文字数制限つきのテキストフィールドをちゃんと作るのは難しいという話

    「そんなん簡単やろ」と思いますよね。 たとえば、「UITextField 文字数制限」でググれば山のようにブログ記事やらコードが出てくるし、Stack Overflow に載ってるコードのコピペ一発で解決しそうに思えませんか? 実は文字数制限をつけたテキストフィールドはそんなに簡単な話ではないのです。 shouldChangeCharactersInRange:replacementString: は使えない子 今回はこれに尽きます。 UITextField や UITextView のデリゲートで呼ばれる textField:shouldChangeCharactersInRange:replacementString: やtextView:shouldChangeCharactersInRange:replacementString: は使ってはいけません。 より正確に言うと、使うとき

    efcl
    efcl 2014/07/25
    UITextFieldの文字数制限の実装について
  • niw.at — "use strict"

    最近のモダンな JavaScript では、必ず "use strict" というのが書かれていると思います。この使い方を雰囲気ではわかってるけど、正しく理解していない場合が自分も含めて多いと思ったので書きとめたいと思います。 ちなみに、"use strict" でググると Perl のそれが出てきますが、Perl の話はしません。あとセミコロンの話もしません。 "use strict"とはそもそもなにか "use strict" は、Use Strict Directive と呼ばれています。 これは ECMA-262 の 14.1 Directive Prologues and the Use Strict Directive によって示されています。 A Use Strict Directive is an ExpressionStatement in a Directive Pro

    efcl
    efcl 2012/07/07
    strict modeの宣言について詳しく書かれてる。 "use strict"の書き方と効果。Directive Prologueの最後に"use strict"があった時に、それ以前のもの(関数全体)にもstrict modeは適応される。
  • niw.at — +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] が何をしているか調べてみた

    +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] が何をしているか調べてみた TL; DR: +[NSURLConnection sendAsynchronousRequest:queue:completionHandler:] は dispatch_async で +[NSURLConnection sendSynchronousRequest:returningResponse:error:] を呼んでいる。 NSURLConnection を非同期に使いたいなんて要望はもうそれこそかなり昔からあって、数多の車輪の再発明とブログと FAQ が生まれたわけですが、一昨年の Grand Central Dispatch1、GCD の登場でついに抜的な解決が見えるかのように見えてわひょーいってなった割には

    efcl
    efcl 2012/03/05
    非同期なNSURLConnection
  • 1