今回は、Interface Builder を使って、UITextField, UILabel, そして ボタンを配置し、Xcode で書いたコードと接続し、動作させてみます。
アプリケーションの仕様
ユーザーがテキストボックスをタップすると入力用のキーボードが表示される
ユーザーは自分の名前(任意の文字列)を入力する
実行ボタンを押す
ボタンを押すとラベルが、「Hello! ユーザー名!」のような表示に更新される
もし、テキストボックスが空のまま実行されると、警告を表示させる
…
このエラーは、autorelease によってリリースされた(される)コントロールを自分自身で release を読んで解放しようとした時に、おこるエラーの様です。
私の場合は、以下のようなコードを実行したら3回ほどクリックすると落ちました。
ボタンをクリックするとdivision.text にデータベースから抜き出した文字列を表示するというコードです。
UILabel のdivision は自分で releaseをしなくても、autorelease されるということなんでしょうか。 なんにせよ、以下のようにコメントアウトすることで、動作するようになりました。division.text = [NSString stringWithUTF8String
🙁char *)sqlite3_column_text(statement, 2)];
//これを入れるとmodifying layer that is being finalized エラー
[division release];
//これを入れるとmodifying layer that is being finalized エラー
//[division release];
graffiti on the web
この投稿へのコメント
コメントはまだありません。