objective-cで自分でdelegateを実装する方法
PaintingViewというクラスでtouchesEnded:withEvent:メソッドが呼ばれたときに
paintingViewDidTouchesEnded というメソッドで通知したいときを例として。
1. 通知メソッドのプロトコルを作る
@protocol PaintingViewDelegate
-(void) paintingViewDidTouchesEnded;
@end
2. 通知を送るクラスの実装
a. 1.のプロトコルを採用したid型のインスタンス変数を作る
この変数に通知先のオブジェクトへのポインタが入る
@interface PaintingView : UIView {
id
}
@end
b. そのプロパティを作る
(@interface内で)
@property(nonatomic, assign) id
(@implementation内で)
@synthesize delegate;
c. a.の変数に入っているポインタが指すインスタンスにおいて実装されているであろう
通知メソッドを、通知したい場所で実行する
その際、本当に通知メソッドが実装しているかrespondsToSelector:を使って確かめる
-(void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
if ([self.delegate respondsToSelector:@selector(paintingViewDidTouchesEnded)])
[self.delegate paintingViewDidTouchesEnded];
}
3. 通知を受けるクラスの実装
a. 通知を送るクラスのインスタンスを作った後で、2.のa.の変数にselfを入れる
PaintingView *paintingView = [[PaintingView alloc] init];
paintingView.delegate = self;
b. 通知メソッドを実装してしたいことをする
-(void) paintingViewDidTouchesEnded {
ほにゃらら;
}
参考URL
http://blog.livedoor.jp/faulist/archives/1483024.html
http://d.hatena.ne.jp/shunsuk/20100604/1275651120
http://vivacocoa.jp/objective-c3e/supplement_b.html
行書の書き方 個人的まとめ
まず初めに
行書とは、速く且つきれいに書くために楷書を崩したもの。
ある程度は崩す法則があるが、いろいろな崩し方がある。
例えば「門」の行書にはいくつかの種類がある。
どんな崩し方を使うかはそれぞれの好み。
基本的には自由。
どうやって崩すかはどこに載っているのか?
- インターネット
- 行書体をまとめた本
本は図書館に置いてあると思う。
昔の人が書いたいろいろな行書が載っているものがおもしろかった。(書名は忘れた。)
同じ漢字でも書く人によって様々な崩し方がある。
具体的に、どのように行書を学ぶのか
メジャーなものはインターネットで崩し方を学ぶことができる。
そこに載っていない漢字は一つ一つ本で調べる。
インターネットリンク集
非常に詳しく丁寧なサイト。右側のメニューから豊富なコンテンツを選べる。
基本的なことを学べる。
ゼブラのサイト。画像クリックで行書が出てくる。
ひらがな
ひらがなは草書(行書よりもっと崩れたもの)の進化の果てなので、それ自体がそもそも行書の仲間。
とは言ってもやはり行書に似合うひらがなはある。
このページが非常に参考になる。http://daigotorena.moo.jp/lesson/hiragana-zenpan.htm
こちらはゼブラのサイト。http://www.zebra.co.jp/kakikata/gyousho2.html