Cocoaはさっぱり!!! version.11
at MAC
1:名称未設定
08/10/26 03:42:50 Ato5tySs0
前スレ
Cocoaはさっぱり!!! version.X(10)
スレリンク(mac板)
Cocoaはさっぱり!!! version.9
スレリンク(mac板)
Cocoaはさっぱり!!! version.8
スレリンク(mac板)
Cocoaはさっぱり!!! version.7
スレリンク(mac板)
Cocoaはさっぱり!!! version.6
スレリンク(mac板)
Cocoaはさっぱり!!! version.5
スレリンク(mac板)
Cocoaはさっぱり!!! version.4
スレリンク(mac板)
Cocoaはさっぱり!!! Version.3
スレリンク(mac板)
Cocoaはさっぱり!version:2
スレリンク(mac板)
Cocoaはさっぱり!
スレリンク(mac板)
2:名称未設定
08/10/26 03:43:22 Ato5tySs0
関連スレ
Macでプログラミング{9}
スレリンク(mac板)
MacOS XをUnixとして使ってる人の為のスレ その14
スレリンク(mac板)
Xcode part7
スレリンク(mac板)
MacでJava その4
スレリンク(mac板)
RubyCocoa 初心者質問【Leopardバンドル記念】
スレリンク(mac板)
AppleScript アップルスクリプト 質問、発表 3
スレリンク(mac板)
Cocoaリファレンス日本語化計画
スレリンク(mac板)
3:名称未設定
08/10/26 19:27:40 Ob0KlCLP0
>>1乙
あと、こんなの見つけた。
URLリンク(cocoawiki.aerial.st)
まだ情報少ないみたいだけど、メモ代わりに使わせてもらおっと
4:名称未設定
08/10/27 17:43:20 9uBJK4c00
いちもつ
5:名称未設定
08/10/28 00:59:41 YdtXB3i50
テンプレに英語系 Cocoa 役立ちサイトを追加:
本家ドキュメント
URLリンク(developer.apple.com)
わかりやすいチュートリアル
URLリンク(cocoadevcentral.com)
Cocoa に関する Wiki
URLリンク(cocoadev.com)
Cocoa blog 一覧
URLリンク(cocoablogs.com)
だれか日本語の Cocoa サイトをまとめて。
6:名称未設定
08/10/28 01:32:23 UXhSYK7I0
>>5
>>3のwikiにある中から、代表的なもので
Cocoaはやっぱり!
URLリンク(www.big.or.jp)
HMDT
URLリンク(homepage.mac.com)
OOMORI.com - Cocoaリファレンス
URLリンク(www.oomori.com)
こんなとこ?
あと、Cocoa Bindingの例探してて見つかった、
Cocoaで遊ぼう!!
URLリンク(homepage.mac.com)
ほかにもオヌヌメあったら、ヨロシコ
7:名称未設定
08/10/28 01:41:19 Fus9Bxnw0
Cocoa Break!
URLリンク(park15.wakwak.com)
Cocoa Bindings Examples and Hints
URLリンク(homepage.mac.com)
8:名称未設定
08/10/28 10:47:25 e40mOyml0
とりあえず良さげな知っている所を挙げてみる
Omni Developer
URLリンク(www.omnigroup.com)
Mac♪Mac♪Mac♪
URLリンク(www.macmacmac.mydns.jp)
Repeating Motif Wonderland
URLリンク(www15.plala.or.jp)
みるくCocoa
URLリンク(www.stripe-net.jp)
9:名称未設定
08/10/28 12:34:15 /p+sPRRh0
全然書き込みないけど
Carbonはさっぱり!!!
スレリンク(mac板)
10:名称未設定
08/10/28 18:29:50 e40mOyml0
あ、これ忘れてあげないで。
Objective-C [ObjC part:3];
スレリンク(tech板)
【マック】Macintoshプログラミング質問箱
スレリンク(tech板)
【Cocoa】Macプログラマのスレ【Objective-C】
スレリンク(prog板)
11:名称未設定
08/10/28 18:47:24 /p+sPRRh0
OmniGraffleやOffice 2004(たぶん2008も)のUtility Windowのように、
ドラッグにより、Window同士がある程度近づくと、ドラッグがある程度離れるまで、
ぴったりくっついた状態をキープする動きを実装したいのです。
Windowの位置が近くかどうかは、WindowサブクラスのmouseDragged:内で、位置を取得して割り出せました。
で、Windowがくっついた位置をキープしたいのですが、この方法が分かりませんでした。
mouseDragged:内で、[NSWindow setFrameOrigin:]などで位置を強制的に固定しようとしても、
mouseUp:になるまで効きませんでした。どうすればいいのでしょう?
12:名称未設定
08/10/28 21:40:46 iCg2NlHu0
>>11
URLリンク(www.literatureandlatte.com)
にある、KBPalettePanelExampleがそれっぽい挙動実装してるよ。
13:11
08/10/29 19:46:15 lZE7N+XQ0
>>12
まさにこれですね。じっくり見てみます。
とりあえずありがとうございます。
14:名称未設定
08/10/29 22:02:38 cQqhv9zc0
MallocDebugについて質問
MallocDebugで起動し、PopupButtonからLeaksを選択するとリークしているものが表示されると思っている。
次の手順で作ったアプリでリークが検出されるんだけど、本当にリークしているのか
MallocDebugが誤動作しているのかどっちなんでしょうか。
Xcode3.1 OS10.5.5 MallocDebug1.7.1(89.0)
Cocoa Applicationのテンプレートで新規作成
クラス作成
@interface MYObject : NSObject {
IBOutlet NSTextField *textField;
}
-(IBAction)button:(id)sender;
@end
@implementation MYObject
-(IBAction)button:(id)sender
{
[textField setStringValue:@"string"];
}
@end
WindowにNSTextFieldとNSButtonを配置し、アウトレットとアクションをセットし完成。
手順:
テキストフィールドに入力したり、消したり、ボタンを押したりしてから
MallocDebugでリークをチェックするとリークしているように見える。
(272 0x1>こんな感じになってます。272は操作を繰り返すと増えていきます。)
書いてて気にしないのが良いように思えてきた。
15:名称未設定
08/10/30 16:30:52 01X0n4GO0
オブジェクトのディープコピーをするにはどうしたらいいですか?
16:名称未設定
08/10/30 23:25:40 sjApbA2/0
自分でメソッドかけば仕舞いだと思いますが。
めんどくさければ、
NSKeyedArchiver で NSData にかためて、
NSKeyedUnArchiver で NSData にとかせばディープコピーになるんでは?
17:名称未設定
08/10/31 00:07:46 WY8mn5mD0
俺いつもそうやってるw
18:名称未設定
08/10/31 00:22:36 Ijy6iEQp0
>>15
ここ読むといいかもしれない。
URLリンク(journal.mycom.co.jp)
19:名称未設定
08/10/31 10:11:29 nFHujBCu0
>>14
まあ自分では対処しようがないんだから気にすることは無いんじゃない?
あと@"string"をインスタンス変数に入れて
初期化が一回だけになるようにしたらどうだろう?
たしか文字定数は初期化一回だけのはずではあるけど
20:名称未設定
08/10/31 22:16:59 9ab+JRCT0
Xcode 3.1/Mac OS 10.5.5 (intel)
MacBookとか、iMacとかのモデル名を取得する方法ってあるでしょうか。
21:名称未設定
08/10/31 22:30:21 3evJZ2XL0
>>20
ハードウエアの情報については、開発ツールのIORegistryExplorerで目的のものがあるか探してくれ
22:名称未設定
08/10/31 22:34:21 cB2Q2v1H0
ADCの日本語ドキュメントを見ながら初Cocoaに触れてますが、チュートリアルでいきなりつまずきました。
URLリンク(developer.apple.com)
ここで
> ConverterController.hファイルを選択して「開く」をクリックします。
とありますが、これをやっても何もおきません。図5-3のようにもならなければエラーも出ません。
何が原因でしょうか???
23:名称未設定
08/10/31 22:42:52 23e1rSMO0
なにもおきなくて正解です。単にその操作は、
.h に書かれている内容を IB に教えてあげるだけです。
図 5.3 のようにするには、ステップ 3 をしないといけないです。
ライブラリから青い立方体のをドラッグ&ドロップして、
クラス名を NSObject から ConverterController にしてやらないといけないです。
24:22
08/10/31 22:53:59 cB2Q2v1H0
>>23
おお!なるほど!できました!
それにしても紛らわしい書き方ですね…。
25:名称未設定
08/10/31 23:04:11 23e1rSMO0
Apple のかわりにあやまっておきます。ごめんなさい。
あと、普通は 2. のステップ (.h を開く もしくは IB にドロップ) は
IB が自動的に XCode に登録されてる .h を全部監視しているので
しなくてもいいんですが、ときどき IB が混乱して
新しい .h を読まなかったりするので、やり方は覚えておいたほうがいいでしょう。
まあ頑張ってね :) 仕組みがわかれば IB は快適です。
26:名称未設定
08/11/01 01:11:52 n4dRfqKu0
>>21
ありがとうございます。見つかりました。
Macにもレジストリってあったんですか…。
27:名称未設定
08/11/01 01:17:48 nRvsaBqW0
てめー、Mr. Registry.appさんにケンカうってんのか
28:名称未設定
08/11/01 03:04:31 ABXtPrBS0
RegistryはMicrosoftの登録商標ですか
29:名称未設定
08/11/01 04:53:05 lyFOviiP0
iPhoneで何か作るか〜と昔買ったヒレガス本を引っ張り出してきて
まーとりあえず、cocoaでOSX用乱数発生アプリを手本通りに組んで
追々思い出しながら手慣らしを〜・・・
インターフェースビルダにツールバーが無ぇ!(笑
”システムフォント”はどこだ?(笑
NSObjectのサブクラスを・・・ってClassメニューはどこ行った!?(今日はここまでw
Xcode3(というかインターフェースビルダーというか)が変わってて
昔の本の記述が役に立たねぇ orz
30:名称未設定
08/11/01 12:13:33 azplz7rR0
つうかCocoaの「たのココ」とかチュートリアルとか、
に何となく簡単そうに見える本から入っていく初心者って、
IBでGUI作ったりチュートリアルのコピペあたりで終わって
つまづいて進歩しないか、飽きていくのがほとんど。
ちゃんとC言語、オブジェクト指向、Objective-C、と基礎から
積み上げて行かないと、いくらやっても表面なでてるだけで、
まともに書けるようにならないよ。
31:名称未設定
08/11/01 12:39:28 IrrqNq8q0
確かに今活躍してるCocoa開発者はNeXTのときにみっちり身につけてる人らばっかりだもんな。
32:名称未設定
08/11/01 12:57:52 5Mi4Vs1D0
MacOSXがリリースされてから、すでに7年はたっている。
これだけ時間があれば、NeXTを知らなくても、Cocoaを身につけられる
33:名称未設定
08/11/01 13:00:28 suYAyqpA0
んなことはない。「たのココ」は知らんが、俺は「ヒレガス本」から入った。
後はサンプルをつまみ食いしつつ、AppleのサイトのApplicationKitと
Foundationのクラスのドキュメントを読めば何とでもなる。Cを知らないと
話にならんが、最初からObjective-Cをすべて網羅する必要はない。
それこそ、CとかObjective-Cの基礎からやってたんでは飽きてしまって
Cocoaに辿り着けなくなるのがオチだ。
NeXTからやってる奴なんてごく少数だ。
34:名称未設定
08/11/01 13:02:11 suYAyqpA0
>>33は>>30と>>31へのレスだよ。
35:名称未設定
08/11/01 13:13:39 9deuPHbB0
俺も>>33と同意見
俺はプログラミングド素人
Macも6月に買ったばかり
未だに「オブジェクト指向?」「クラス?」「メソッド?」なレベルなんだけど
「たのCoco」とサンプルを参考にして既にiPhoneアプリを一本リリースした
これがそこそこ売れてしまったのでモチベーションUP!!
最近ようやくCの入門書を買って読み始めた
最初にCの入門書を読んでいたら確実に挫折していたと確信している
36:名称未設定
08/11/01 17:13:04 fjrubA2a0
>>35
何作ったの?
37:名称未設定
08/11/01 17:58:25 n4dRfqKu0 BE:226400933-2BP(1235)
sssp://img.2ch.net/ico/si.gif
>>35
有料化できるアプリってどういうのなんだろ。
やっぱちゃんと作らないといけないイメージがある。
あと、レジストキー関係のプログラムが面倒くさそう。
適当でも良いんだけど、適当だと簡単に破られるしね。
そこらへん、iPhoneは有料アプリ組みやすいのかな?
俺の暇つぶし集↓今んとこ全部無料。
URLリンク(www.smilemac.com)
38:名称未設定
08/11/01 19:57:18 azplz7rR0
C言語からはじめる必要はないか。
ただIBで遊んだりチュートリアルのコピペをしばらく
楽しんだら、ある程度基礎的なことも理解していく必要は
あると思うけどね。
その点で、
> 最近ようやくCの入門書を買って読み始めた
という>>35はもう次のステップにうつっているから
良いんだけど、そういうステップに行く前に挫折する人が多いのも
事実。
39:名称未設定
08/11/01 20:06:00 ABXtPrBS0
Cすらも分からんのに何やるのさ
40:14
08/11/01 20:41:08 pd2MLZdJ0
>>19
元々はCocoaバインディングを使ってみて同じ現象になったんでバインディングの
使い方が悪いのかと思ってたんですが、使わなくてもなったんでデバッガの使い方が
悪いのかと思って質問しました。
気にしないことにします。
>>35の行動力は凄いな。
41:名称未設定
08/11/01 23:23:16 /+/D9BW40
>>37
>あと、レジストキー関係のプログラムが面倒くさそう
iPhone の場合はそのあたりは全部 AppStore が面倒見てくれるので
なにも書かなくていい。
42:名称未設定
08/11/01 23:32:13 sVr4qJRL0
>>37
誰かと思ったらMacNicoPlayerの作者さんじゃないかw
暇つぶしとかそんなまた謙遜を。
なんか35見て感動したのでたのCocoAmazonで買ってくるか。
43:名称未設定
08/11/02 00:12:33 lKREfCNZ0
>>35はかなりセンスあるんだな。
俺は趣味グラマ長いけど、未だにInterfaceBuilderには馴染めない。(泣
44:名称未設定
08/11/02 00:23:21 HoLoopJM0
>>43
習うより慣れろ。by パソコンサンデー おヅラも出てたな。
45:名称未設定
08/11/02 00:36:37 lKREfCNZ0
パソコンサンデー・・・
何もかもが懐かしい。
スレ違いスマン。
46:35
08/11/02 00:45:43 lImmlfsv0
iPhone Dev Centerのドキュメントとサンプルコードが充実していたので
なんとか一本書けた感じです
URLリンク(developer.apple.com)
細かいことはとりあえず気にせずに
とにかく一本AppStoreに出してみようじゃないか!
という勢いだけで突き進みました
課金については>>41の通り
料金をプルダウンメニューから選ぶだけです
もちろんFreeでもいいです
どんなに小さなアプリでも
とにかく一本完成させたことが大きな自信につながったので
小難しいことは軽くスルーしつつ一本作って公開してみるといいと思います
その点、iPhoneのAppStoreは小さいアプリをぽんぽん出せるのでおもしろいです
今後はOSXのアプリにも挑戦したいですねー
47:名称未設定
08/11/02 01:00:42 MKapFhX90
>>41
ほぉ、そうなのか。
ところで、$99払えば誰でもアプリ売れるの?
それとも審査とかがあるのかなぁ。
Developer Connectionは日本語文字化けするので、買い物用のApple IDとは別のIDにしてるんだが、もし審査あるのなら、メイン垢のほうが良さげ?
日本語名の垢でやるとフォーラムとかで自分の名前化けそうなんだよな。
そこらへん誰かkwsk。
>>46
iPhone開発って難しいイメージあったんだが、iPhone SDKのリファレンス見たら、そうでもないのか。
Cocoaアプリ作る要領で、リファレンス見ながらやればすぐいける感じかな?
ちょっくら作ってみるか、実機もって無いけどorz
48:名称未設定
08/11/02 01:11:24 lImmlfsv0
>>47
シミュレータで動かすだけなら無料
実機転送とAppStoreに公開したいのなら$99払う必要有り
アカウントの文字化け問題には俺を含めてかなり多くの日本人が悩まされているけど
「文字化けしてるから直してくれ!」って根気よくADCにメールすればそのうち直るw
これは人によっていろんなケースがあるから一概には言えない
iPhone開発に関しては
プログラミング経験のほとんどない俺が
Macを初めて買って一ヶ月ちょっとでリリースまでこぎつけられたことを考えると
ハードルは高くないはず
アプリは提出すると審査があって
脆弱性とかエログロとかがあると却下される
でもどこが悪いのか教えてくれるから直しやすい
詳しくはiPhone開発スレで
スレリンク(mac板)
49:名称未設定
08/11/02 02:08:28 lyXSXRrr0
バカお前ら騙されるな
>>35 = mkino (=たのcocoの著者) だ!!
>>35は宣伝なんだよ!!
50:名称未設定
08/11/02 02:09:20 j7DXTstY0
ΩΩΩ < 何だって〜〜!
51:名称未設定
08/11/02 02:20:49 fJQfdcGh0
やられた!
>>35 見て、今すぐ書店に急いじゃったぜ!
52:名称未設定
08/11/02 03:34:40 Y374j0B40
アメリカの会社なのに社会主義的でおかしいよね
53:名称未設定
08/11/02 04:03:29 sEZUqidf0
>>35は売り上げを晒すかアプリを晒して欲しい。
54:名称未設定
08/11/02 04:10:21 Y6GegVsr0
なんで49とか53はそう悪意というか疑いの目で35を見るかな....
嫉妬でもしてるのか?
55:名称未設定
08/11/02 04:29:03 9VM5jO2v0
iPhoneのアプリ作ってる人ってカタギじゃないですよね?
56:名称未設定
08/11/02 04:55:14 CejDTsgr0
>>54
パソコンサンデーとか言って通じる辺り、たぶんここの平均年齢層は高いのだと思うが、
そういう世代にとって、プログラミングというのは「模型を作る」のと同じレベルの趣味で、
さーて、なんかiPhoneだと世界相手にプログラム作って売れるらしいからなー
こりゃ面白い、あーでもMSXマガジンの頃はいくらでもアイデア出たのに、
長年離れてたら勘が鈍ったなー まーcocoaの作法覚えながら、また少しずつ鍛えるかー
ぐらいのもんなんだが、
「プログラミング」っていうのがひょいとパソコンを買ってきたら普通にできるホビー。
じゃなくて、プログラミングというのは専門学校かなにかで習って、
企業に就職したプロが、プロジェクトチームでカネを掛けてやるもの。
ってことに(その子の中では)なってる子が、
これ系の別スレにも迷い込んでて周りと話がかみ合ってなかった。
57:名称未設定
08/11/02 05:26:20 Y6GegVsr0
自分はパソコンサンデー?なにそれ?って感じの世代だがそのホビーとしてのプログラミングって言う発想は分かる。
まだ自分がMacユーザーではなかったときに一番最初にいじった言語はなでしこ(URLリンク(nadesi.com))だったなそういえば。
その後JavascriptをちょっといじってからMacに移動して、AutomatorとAppleScriptに興奮して、最近たのCoCo版Tigerを買ってXcode 2.x系列を落として色々やっていたらLeopard版が出てしまったというのが現状。
でもそういえば自分は文系だった気がする。おかしいかな?
58:35
08/11/02 07:17:52 lImmlfsv0
パソコンサンデー?
なんだか方向がズレてきてるけど
とりあえず自分が言いたかったことは
・C言語からはじめて挫折するよりも、細かいところには目をつぶってサンプルコードを参考にしてとにかく何か一本完成させて公開までもっていく
・これにはiPhoneアプリが最適なのではないか
(Appleの審査があるので無自覚に危険なアプリをばらまいてしまう恐れも無いし、メンテや課金も簡単)
こんな感じです
アプリは実名で出しているのでアプリ名晒しは勘弁してください
これまでの売り上げはMacBookが買える程度です
売り上げのほとんどが海外です(これもiPhoneアプリのおもしろいところ!)
ではみなさんもがんばって!
59:名称未設定
08/11/02 09:39:27 3POzmbdQ0
ObjC (Cocoa) + IB ってのが、簡易言語的な感じでとっつきやすいんだろうね。
で、実用的なGUIなアプリが割と楽に作れるし、達成感もあると。
素のC言語から初めて、何か人に使ってもらえるものを作るとなったら、
結構な道のりだからなあ。
iPhoneのアプリなんかは、単純なプログラミングの技術より、何かいい発想の
ある人の方が面白いものを作れる可能性が高いような気がする。
60:名称未設定
08/11/02 10:18:24 anI9QKlo0
35が宣伝でも構わんが、たのCocoは正直オススメできない。
内容も薄いし、理解させようと言う意識が感じられない。
入門ならヒレガス本をオススメする。
61:名称未設定
08/11/02 10:21:52 sje4Pdr1P
しかしIBのインターフェースが変わったのがヒレガス本としては痛いな
早く新版でないかなー
62:名称未設定
08/11/02 10:28:52 Y6GegVsr0
もう新版出てないか?>ヒレガス
URLリンク(www.amazon.co.jp)
Amazonには2001,2004,2008が全部売られているけどタイトルで分類しているせいか全てに同じ内容の商品説明とカスタマーレビューがついていて混乱する。
63:名称未設定
08/11/02 10:54:58 3Vx+y2lH0
>>62
たぶん>>61は和訳されたものが欲しいのだと思う。
俺も旧版の和訳しか持っていないので
新版出てくれるとありがたい。
64:名称未設定
08/11/02 19:07:02 /LuXh8CU0
>>29
好きに使え、って書いてあったから、XCode3用のチュートリアル書いてみた。
URLリンク(cocoawiki.aerial.st)
でも画像あげれないから超分かりにくいね、これ。
65:名称未設定
08/11/02 19:14:03 MKapFhX90
URLリンク(developer.apple.com)
66:名称未設定
08/11/02 21:02:55 mqh/+RaW0
すみません、質問です。
アプリを起動した直後に特定のテキストフィールドなどにフォーカスを
当てたいのですが、どうすればよいのでしょうか?
67:名称未設定
08/11/02 21:06:32 sje4Pdr1P
>>64
コメントありがとね
画像アップはちょっとまってて、
2、3日でリアルが片付くから、それからやります
不便をさせて申し訳ない
68:名称未設定
08/11/02 21:54:10 lKREfCNZ0
ここ数日ADCのレスポンスが異常に悪いんですが、皆さんいかがですか?
Software Updateもタイムアウトで完了できない有様で・・・。
69:名称未設定
08/11/02 22:03:51 Y6GegVsr0
>>68
Snow Leopardの新seedのせいとか?
70:名称未設定
08/11/02 22:03:55 rI4hnwUX0
>>64
Cocoa Bndingになってる
71:名称未設定
08/11/02 22:11:09 MKapFhX90
>>68
-(void)awakeFromNib{
[myField becomeFirstResponder];
}
72:名称未設定
08/11/02 22:11:42 MKapFhX90
ごめん、安価ミス
>>66宛。
73:名称未設定
08/11/02 23:48:27 mqh/+RaW0
>>71
ありがとうございます。
ちなみに調べていて
[myWindow makeFirstResponder:myField];
でも行けたのですが、どちらも同じですかね?
74:11
08/11/03 00:21:48 3VCrO+9U0
通りすがりだけど
becomeFirstResponder
には
Use the NSWindow makeFirstResponder: method, not this method, to make an object the first responder. Never invoke this method directly.
とあるね
75:名称未設定
08/11/03 00:58:24 Hr4zrpPq0
becomeFirstResponderってオーバーライド用じゃなかったっけ?
76:名称未設定
08/11/03 02:17:40 qCH2Sci10
OSX10.3辺りで一時期cocoaに触れて、
その時に作ったソフトが起動すらしなくなったので改めて一から作り直そうと
久々にcocoaに再挑戦する所なのですが、
レオパルドの開発環境では何か根本的に作り方が変わったりしてるんでしょうか?
77:名称未設定
08/11/03 02:44:14 1yy3U75q0
再ビルドすれば起動するんじゃないの
IBが変わりすぎて慣れるのに時間がかかる。
78:名称未設定
08/11/03 02:52:02 mTkV4jRn0
>>74-75
73ですけどご意見ありがとうございます。
makeFirstResponder を使った方が良いという事ですよね。
79:76
08/11/03 03:22:30 qCH2Sci10
以前改良しようと中途半端に手を加えた場所等、
もう全体構造が判らなくなってるので一から作った方が早いと思ったからです。
80:名称未設定
08/11/03 03:36:44 Foy84T9X0
いや、プログラムのサイズにもよるけど、
がんばって思い出してみたほうがいいんじゃないかな。
とりあえずは昔のプロジェクトを最新の xcode で開いて、
コンパイルしてみるのをおすすめします。
なにか 10.5 になってなくなった/挙動がかわった
API をつかってるのかもしれないし ...
デバッガでどこで落ちてるのかを調べるだけでもちがうでしょう。
別に本質的にはなにもかわってませんよ。
いろいろ Cocoa の API が増えてるのを除けば。
(CoreData, Binding とか... Binding は 10.3 にもあったっけ?)
>>77 さんもいうように
IB3 は IB2 からかなり変わりましたが、outlet / target の考え方はかわらないし。
クラスは IB 側で作らずに XCode で作ることが推奨されるようになったぐらい?
81:名称未設定
08/11/03 10:01:54 DCZONU6Z0
>>73
IBでwindowのinitialFirstResponderとテキストフィールドを繋げてもできた
後はnextKeyViewを繋げていけばタブキーの移動が制御できた
82:名称未設定
08/11/03 10:02:46 dKQvPNo00
>>78
becomeFirstResponderは「自分がFirstResponderになるか否か」を返すためのもの。
FirstResponderにしないビューを作りたい場合、
becomeFirstResponderをオーバーライドしてNOを返せば良い。
- (BOOL)becomeFirstResponder {
return NO;
}
83:名称未設定
08/11/03 18:19:30 jVQJ8W/E0
unsigned int hoge = 4264034304;
NSData *hogedata = [NSData dataWithBytes:&hoge length:4];
NSLog(@"hoge is %d, hogedata is %@" , hoge, hogedata);
とやってコンソールの出力を見ると
hoge is -30932992, hogedata is <000028fe>
となります。
32bitなので unsigned int なら4264034304(0xfe280000)はきちんと表示されると思ったのですが、
この-30932992や<000028fe>はどうして出力されるのでしょうか?
84:名称未設定
08/11/03 19:17:31 +8TFOxC70
>>83
こんな感じでどうでしょう
unsigned int hoge = 4264034304;
NSData *hogedata = [NSData dataWithBytes:&hoge length:4];
NSLog(@"hoge is %u, hogedata is %@" , hoge, hogedata);
union {
unsigned int ui;
unsigned char ch[4];
}test;
[hogedata getBytes:&test length:4];
NSLog(@"hoge2 is %u, %x, %x, %x, %x" , test.ui, test.ch[3], test.ch[2], test.ch[1], test.ch[0]);
URLリンク(developer.apple.com)
85:名称未設定
08/11/03 20:07:58 YM+SucNB0
要は符号付き/無しとエンディアンの話か。
86:名称未設定
08/11/04 18:54:34 eYzISOw90
ライブラリのパスの渡し方を教えてください
プロジェクトの設定でライブラリ検索にパスを渡しても
エラーが生じます。
ちなみにヘッダファイルのパスは上手く通ります。
87:名称未設定
08/11/04 23:33:36 G6xtfucg0
>>86
スタティックライブラリ(.a?)ならファイルが並んでるツリーのところで
右クリック->追加->既存のファイルでライブラリファイルを選択
同様にヘッダファイルを追加してビルドすればできたっぽい
プロジェクトの設定とかはいじってない
88:87
08/11/04 23:38:48 G6xtfucg0
>>87に追記
*.a、*.hの追加時にコピーは作っても作らなくてもできた
89:名称未設定
08/11/04 23:41:04 eYzISOw90
>>87
ありがとうございます。
明日確認してみます。
90:名称未設定
08/11/05 21:09:37 19atskXb0
NSTableView内のセルを編集可能にして
セルの内容をプログラム内で読めるようにしたいのですが、
どのようなメソッドを使えばいいのでしょうか?
変更した時点でデータを読みに行く必要は無くて、
適当なタイミングで(Save Buttonを押した時とか)読めればいいのですが。
元々用意してたデータをNSTableViewに表示までは出来るようになったのですが。。。
91:名称未設定
08/11/05 22:03:03 bThhRr9i0
>>90
tableView:setObjectValue:forTableColumn:row:
セルの内容が変更になった時に呼ばれるから、
該当するデータを差し替えれば良い。
92:76
08/11/06 08:26:12 8NSMQDOL0
遅れながら、言われた通りちょこっと頑張って直せました。
レオパになってメモリ管理の新機能が付いたとかチラ聞きして
その辺りも含めて立ち上がらなくなったのかとか色々考え過ぎて腰が引けてた様です。
有り難うございました。
93:90
08/11/06 11:23:58 FHeExVxB0
>>91さん
出来ました! 素早い解答ありがとうございます。
94:名称未設定
08/11/06 21:38:07 5DYNPx6+0
NSTextField内の挿入ポイントを行の最後に移動したいのですが
どうすればいいでしょうか?
moveToEndOfLine: はNSTextViewでしかできませんでした。
95:名称未設定
08/11/06 21:48:16 4wWZp45n0
currentEditor で NSText を取り出して moveToEndOfLine:
96:名称未設定
08/11/06 23:12:39 xQKaLsP4P
うちのCocoa Wikiにコメントをくれた人、いますかね?
ファイル添付機能を有効にしたので、再度編集していただけると嬉しいです。
ちなみにファイルサイズの上限は5MBです。
97:名称未設定
08/11/06 23:48:14 5DYNPx6+0
>>95
[[inputTextField currentEditor] moveToEndOfLine:self];
できました、ありがとうごさいます。
98:名称未設定
08/11/07 01:50:36 ww1WLO3q0
>>96
ありがと
マターリとやっていきます。
99:名称未設定
08/11/07 09:13:42 Xt4hlMq90
URLリンク(cdn1.ustream.tv)
めちゃくちゃ可愛い
100:名称未設定
08/11/07 11:15:30 DD7bYBXs0
いまいち何が問題なのかわからないので、質問させてください。
まずMyClass.hとMyClass.mで下のように実装して
@interface MyClass : NSObject {
NSMutableArray *myArray;
}
@end
@implementation MyClass
-(id)init
{
self = [super init];
if( self ){
[myArray initWithCapacity:10];
[myArray addObject:[NSNumber numberWithInteger:1]];
NSLog(@"myArray is %@", myArray);
}
return self;
}
@end
その上で、AppController.h とAppController.mで
@interface AppController : NSObject{
MyClass classObject;
}
@end
@implementation AppController
-(void)awakeFromNib
{
classObject = [[MyClass alloc] init];
}
@end
というふうに初期化してみても、コンソール出力に(NULL)しか出ません。これは何故なのでしょうか?
あとこのmyArrayをアプリケーションの起動から終了までずっと保持しておきたいのですが、ガーベジコレクションを使う場合、ルート集合から参照しておけばよいと本に書いてあります。具体的にはどうすればよいのでしょう?
101:名称未設定
08/11/07 11:18:38 I+wKqcuj0
↑フラッシュの穴を付いた攻撃なので注意
102:名称未設定
08/11/07 11:20:56 Xt4hlMq90
[myArray initWith...] じゃだめ。その時点では myArray は nil でしょ。
nil に initWith メッセージを送ってもどうしようもないです。
myArray=[NSMutableArray alloc];
として myArray に NSMutableArray のインスタンスをつくってから、
initWith... しないと。普通は組み合わせて
myArray=[[NSMutableArray alloc] initWith... ]
とするのが吉。
ルート集合って何のことなのか具体的なことが本に書いてあるはずだけど、
読みましたか?読めばどうすればよいのかこともわかるはずだけど...
103:名称未設定
08/11/07 11:22:48 Xt4hlMq90
え。このフラッシュって悪い奴なの?ごめんなさい。
単に犬の赤ちゃんの live webcam で可愛いなあと思ってみてたんですが...
104:名称未設定
08/11/07 12:55:31 xQSQPAmW0
それをなぜこのスレに貼る
105:100
08/11/07 13:08:19 DD7bYBXs0
>>102さん
確かに[myArray [[NSMutableArray alloc] init..]とすると動きました。
初めて1月たつのに、まだまだ基本的な所が理解できていないようです。
本は荻原さんの詳解Objective-C2.0を読んでるんですが、
外部変数や大域変数がなんなのか、そこから参照するというのがよくわかりません。
106:名称未設定
08/11/07 14:08:16 5c1UEXI40
1ヶ月で理解出来たら、世の中はObj-Cプログラマーで溢れかえってるんだぜ?
107:名称未設定
08/11/07 16:01:22 SM5nwPQ/0
最近プログラミングを初めようと思いCocoa本買いました。
Mac買った時に付属していたDVDからXcodeインストールしたんですが、新規プロジェクトの中のCommand Line Utilityという項目はあるんですが、その中にStanderd ToolやFoundation Toolなどが入ってません。
どうすればいいでしょうか?
素人的なことで申し訳ないです…。(-.-;)
108:名称未設定
08/11/07 16:47:19 xH5O/xya0
買った本は何か? Xcode のバージョンは? 何をしようとしているの?
109:名称未設定
08/11/07 18:55:42 VaKcdyjz0
>>108
バージョンは3.0です。
買った本は木下誠「たのしいCocoaプログラミング」です。
実験用のプロジェクトをつくりたいんですが。
110:名称未設定
08/11/07 19:25:52 zN7DmkVq0
NSString定数で漢字を使えない設計にした人
すぐに自殺してください。
111:名称未設定
08/11/07 19:35:18 Qu5mLm7y0
>>110
貴方の無知は痛々しいです。何が原因か推測さえ出来ないのですか。
112:名称未設定
08/11/07 20:00:31 zN7DmkVq0
原因はObjective-Cのアーキテクトが馬鹿だからです。
113:名称未設定
08/11/07 20:02:07 xH5O/xya0
たのココ(10.5)にはcommandLineAppなんて無かった気がするが…まぁ、無くても出来るよ。
新規プロジェクト>Application>Cocoa Application を選んで、適当にプロジェクト名を
つける。後はXCodeのウィンドーにある>グループとファイル>Other Sources>main.m
をいじれば良い。StanderdToolのmain.c(Cしか使わなければ、Xcode上でmain.mを選択、
右クリック>名称変更で、.c に)は、
#include <stdio.h>
int main (int argc, const char * argv[]) {
// insert code here...
printf("Hello, World!¥n");
return 0;
}
FoundationToolのmain.mは、
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
// insert code here...
NSLog(@"Hello, World!");
[pool drain];
return 0;
}
なので、書き換えれば良い。
114:名称未設定
08/11/07 20:24:34 WHDeBs4d0
>>109
木下の本はやめた方が良いと思う。
ヒレガス本にしる。
>>112
じゃやめちまえ。
バカに付き合うほど暇なら別だが。
115:名称未設定
08/11/07 20:30:00 qG8ur2d10
うは、馬鹿降臨。
116:名称未設定
08/11/07 20:43:30 7lDacPZy0
>>110
@"漢字ひらがなアイウエオ"
で全然通りますが。
117:名称未設定
08/11/07 21:03:18 zN7DmkVq0
>>116
(´ι _` ) あっそ
118:名称未設定
08/11/07 22:33:21 jHitKJj60
てかさんざん既出だろ。
119:名称未設定
08/11/07 22:39:03 b9cUYWPw0
>>112
それが「objective-cの」言語仕様だと思っている時点でアホウだな。
120:名称未設定
08/11/07 22:41:40 wHlO12kf0
態度わりーw
121:名称未設定
08/11/07 23:08:52 4BK/dCS30
>>107
>Standerd ToolやFoundation Toolなどが入ってません
けど変だね。普通はそこに5つはいってるけどな
122:名称未設定
08/11/08 00:22:53 kXRjTak80
@"..." の定数って、 7 bit ascii 以外は未定義だよね ???
[NSString stringWithCString: "...."
encoding: ソースコードのエンコーディング]
を使うのが安全なんではないかと思いますが。
あと、お願いだからみなさん NSString <---> char* の変換で
encoding 指定のない deprecate されてるメソッドは使わないようにしましょう。
それらのメソッドは Cocoa のデフォルトエンコーディングをつかいますが、
Cocoa のデフォルトエンコーディングは環境設定で言語を何にしているかに
依存するので、日本語環境では動いているソフトが英語環境にすると
途端に動かなくなったりその逆とかいう意味不明なバグが多発します。
これのせいで英語の作者のつくったユーティリティーが
日本語ファイル名をちゃんと扱えなかったりするので泣けます。
123:名称未設定
08/11/08 02:14:53 HB66BG0k0
>>122
これ何に対するレス?
>[NSString stringWithCString: "...."
>encoding: ソースコードのエンコーディング]
>を使うのが安全なんではないかと思いますが。
とりあえず autorelease されてる点は注意だよね。
それに「ソースコードのエンコーディング」ってのも、ポータビリティを考えると
どうよ、って感じがする。
>これのせいで英語の作者のつくったユーティリティーが
>日本語ファイル名をちゃんと扱えなかったりするので泣けます。
この場合はエンコーディングを指定しても本当は駄目で、
filesystemRepresentaion を使わないといけないのだが。
現実的にはUTF-8にしておけば一応大丈夫だけど。
中途半端なアドバイスをするお前に泣けたw
124:名称未設定
08/11/08 02:46:09 D6mFIMvA0
>>113
ありがとうございました。
助かりました。(≧∇≦)
125:名称未設定
08/11/08 06:50:28 +B195WiV0
NSPopupButtonの項目をNSString(実質Title?)のArray以外とBindingできないでしょうか。
NSMenuItemのArrayとできちゃえばサイコーなんですが…。
126:名称未設定
08/11/08 08:06:27 HVynMMKD0
超ハイパーウルトラ初心者ッス
IBでコントロールを二つ用意しそれぞれアウトレットとアクションを一つずつ持ちます。
でWindowsにテキストフィールド二つとスタートボタンがあります。
テキストフィールドはそれぞれ上記で用意した各コントロールのアウトレットと一対一でコネクトさせています。
しかし、アクションであるスタートボタンを二つのコントロールにコネクトさせることができません!
どちらか一つとコネクトさせると一方のコネクトが(勝手に!)解除されます。
スタートボタンを押すと二つのコントロールを起動させたいのですが・・・・
127:名称未設定
08/11/08 08:48:36 SWmtZyAd0
InterfaceBuilder で何でもできると思ったら大間違いだ
128:名称未設定
08/11/08 09:04:59 NHu1yaCo0
>>126
Windowsってw
Actionは1つのオブジェクトにしか送信できないので、
複数のオブジェクトを動作させたい場合は中間にオブジェクトを置くのが手っ取り早い。
ボタン→中間オブジェクト┬→オブジェクト1
└→オブジェクト2
というか、1つのアクションで完結するように設計を見直した方が良いと思うが。
129:名称未設定
08/11/08 11:20:51 Nk749XR60
>>125
できるよ。
ObjectがNSMenuItemのNSArrayController作ってみよう。
130:名称未設定
08/11/08 20:44:39 d4+4vCvN0
超ハイパーウルトラ初心者ッス
>>128さんの言うとおりに中間オブジェクト(Viewクラス)を作りました。
そのViewクラスにIBのテキストフィールドと結びつけるアウトレット変数を定義したのですが・・・・
そのアウトレット変数を>>128で定義されたオブジェクト1や2で使用するにはどうしたらいいのでしょうか?
参考詳細
View.hファイル
IBOutlet id textField1;
-(IBAction)startBu:(id)sender;
View.mファイル
-(IBAction)startBu{
OBJ1 obj1 =[[OBJ alloc] init];
[obj func];
OBJ.m
-(void) func{
[[textField1 setStringValue:"Hello World"]]; //ここでView.hで定義したtextField1を使用したい
}
131:名称未設定
08/11/08 20:51:09 d4+4vCvN0
超ハイパーウルトラ初心者ッス
今日僕はCocoaの奇跡を見ました。
すごい、すごすぎる!
テキストフィールドをプロパティとして簡単に宣言して
等号で結べばいいだけだなんて・・・・・・・・
まー無理だろなーと思いながら試しただけなのに・・・・・
132:名称未設定
08/11/08 21:00:30 C2KKDa3W0
超ハイパーウルトラ初心者ッス
今日はまだ一度もうんこ出てないのに
お腹がすきます
すごい、すごすぎる!
133:名称未設定
08/11/08 22:00:57 NHu1yaCo0
>>130
なんか錯乱しとるから、もうちょい勉強してください。
134:名称未設定
08/11/08 23:46:37 RNOdKyfY0
つーか、キャラ作んなくていいよ。
135:名称未設定
08/11/09 00:22:06 L1s+Atna0
Objective-C糞過ぎ
C++かJavascriptかRubyか、最悪でもJavaで書けるにしろ
つーか、Cocoaなんて廃止して、.NET Framework使えるようにしろよ
136:名称未設定
08/11/09 00:26:57 hlpGev2i0
おまえがやれ
137:名称未設定
08/11/09 00:33:30 L1s+Atna0
お断りだ
138:名称未設定
08/11/09 00:38:23 IHDltFNu0
2行目が何を言いたいのか分からんが
C++とかJavaでやりたいならやればいいじゃん
139:名称未設定
08/11/09 00:39:38 5aT87bHO0
質問です。
たぶんちょっとしたことで出来るんだと思いますが、、、
あるクラスAのメソッドのループから、ウィンドウ中のラベルなどを更新って出来ますか?
ビューコントローラは別にあり、ビューコントローラをインスタンス化してメソッドを直接呼出し
と、安易な考えをしていたのですが、やはり出来ませんでした。
具体的には、ループが進むごとにウィンドウ中のラベル(進行状況%表示)を更新したいのですが、
どうすればいいでしょうか?
140:名称未設定
08/11/09 00:42:14 dKIqpJ+F0
[labelTextField setStringValue:@"hoge"];
[labelTextField display];
これでどうか
141:名称未設定
08/11/09 00:42:53 dKIqpJ+F0
ループの処理を別スレッドにした方がいいけどな
142:名称未設定
08/11/09 00:48:20 L1s+Atna0
>>138
分からないならコメントするな。素人は黙ってろ
143:名称未設定
08/11/09 00:49:34 5aT87bHO0
>>ID:dKIqpJ+F0
ありがとうございます!
スレッドは扱ったことないので、ちょっと勉強してきます。
その場合、ラベルをコントローラにIBOutletとして定義すると思うのですが、
ループ中からそのラベルオブジェクトを扱う事はできるんですかね?
ループの存在するクラスに定義するのは避けたいので・・
144:名称未設定
08/11/09 00:53:03 dKIqpJ+F0
どこで定義しても特に支障無く扱うことができると思うが
ものは試しにやってみれ
145:名称未設定
08/11/09 01:09:57 B9u3WR7L0
メインスレッド以外からは GUI を直接いじってはいけないので、
[object performSelectorOnMainThread: ... waitUntilDone:....]
だったかなにかをつかいましょうね。
146:名称未設定
08/11/09 01:10:15 5aT87bHO0
なるほど、、どこからでも扱えるんですね。
ちょっと今は試せないですが、ありがとうございました!
近々自分のMacを買うつもりなので、転がりながらプログラミングしたいものです。
147:名称未設定
08/11/09 01:21:23 fqJDb0t30
>>145
ん、そうだっけ?
メインスレッドじゃなくてもOKでしょ?
何か制限あったと思うけど、忘れた。
148:名称未設定
08/11/09 01:25:37 IHDltFNu0
GUI系はメインじゃないと危険だったかと
プログレス表示に精密さを求めないならsetNeedDisplay:YESとかでもアリじゃないかな
149:名称未設定
08/11/09 01:28:00 NDkcMBd2P
>>135を読んで思い出したけど、
Objective-J(Cocoaを実装したJavascript?)はどうなったんだ?と思ったら、
URLリンク(objective-j.org)<) にリダイレクトされて、
なんかダウンロードできるようになってる。
150:名称未設定
08/11/09 01:34:57 IHDltFNu0
>>149を読んで意味が分かったけど、
>>135の2行目は日本語の意味が良く分からんかったってこと。まぁカリカリすんなよ。
151:名称未設定
08/11/09 01:53:05 ROIk3bo+0
>>135
出来ないのはお前が糞だから。俺は出来るもんね。
152:名称未設定
08/11/09 03:54:10 B9u3WR7L0
C 系の言語の文法をひとつでも既に知っていて、
Obj-C の文法が二日でわからないひとは何かがおかしい。
Cocoa API の全貌をつかむのは大変なのはわかるけど、
それは Obj-C の文法の問題ではないベ。
153:名称未設定
08/11/09 06:13:08 40c4vp+k0
.NET Frameworkのどこがいいんだがさっぱり謎だが一応。
URLリンク(www.mono-project.com)
154:名称未設定
08/11/09 08:05:26 ijj+bVEA0
110=135でOK?
155:名称未設定
08/11/09 08:10:56 40c4vp+k0
>>135はプログラム板のここにでも行った方がいいんじゃないか?
過疎りまくってるが。
Mac OS Xでの開発環境はどれがイイ?
スレリンク(tech板)
156:名称未設定
08/11/09 09:30:27 mFvSzNPX0
>>125
NSPopupButtonの項目をNSString(実質Title?)のArray以外とBindingできないでしょうか。
NSMenuItemのArrayとできちゃえばサイコーなんですが…。
>>129
できるよ。
ObjectがNSMenuItemのNSArrayController作ってみよう。
125です。
すいません、言葉が足りませんでした。
NSMenuItemをaddObjectしたNSArrayControllerとバインドした場合、
・"Controller Key"は"arrangedObjects"
・"Model Key Path"は"title"
とするのが普通になると思います。
でも、これだとNSPopUpButtonクラスのaddItemWithTitleをしているような感じになり、
結局はNSStringからポップアップの各項目を作ることになっています。
当方の希望は、
・"Controller Key"は"arrangedObjects"
・"Model Key Path"は"self"
みたいな感じ(実際にこれをやってもobjectの説明がポップアップに追加されるだけです)で
NSMunuItemからポップアップの各項目を作るのが希望です。
157:名称未設定
08/11/09 09:36:30 lxRIk4K/0
>>143
ループでGUI更新が動かないのは、NSRunloopが一回りしたタイミングで
更新処理がまとめて行われるからだよね。
コードの中でループしちゃうと、NSRunloopに処理が戻らない。
自分はスレッドが面倒なので、ループをばらし、ループの中身だけ別メソッドに
して、performSelector:withObject:afterDelay: で繰り返し呼び出しに
してる。普通はスレッドにするものなの?
158:名称未設定
08/11/09 10:31:27 L1s+Atna0
>>152
わかるわからないではなく、Obj-Cの文法は美しくない。
159:名称未設定
08/11/09 11:29:50 Cd0AMfEC0
後付け感ありまくりではあるね
シンプルに書けないのも今風ではないね
MacRubyに期待(^^;
160:名称未設定
08/11/09 12:48:29 xdgDUb6t0
>>158
じゃあ、好きな言語を使ったら良いんじゃない?
.NET使う環境から一生出てこなくて良いよ
161:名称未設定
08/11/09 13:00:26 la8cu0hU0
>>156
何をしたいのかわからないけど、
NSMenuのアイテムとNSPopupButtonのアイテムを同期させたい、
または同じ内容にしたいということ?
162:名称未設定
08/11/09 13:53:57 VAAVuJ8X0
>>158
美的感覚の問題だったのか。
じゃあまあ個人の好き嫌いだからそれでいいんじゃね?
僕は括弧の乱舞は好きだけど。
あと、メソッド名が長くてほとんど文章なので
コメントを書く必要がほとんどない、というか
プログラム自体がほとんどコメントになるのはいい点だと思う、って
これは Obj-C の文法の問題ではなくて Cocoa の API の問題か。失礼。
163:名称未設定
08/11/09 14:43:48 YNFGyvs40
文法的に美しく無いとされるフランス語にも素晴らしい文学は存在する。
Objective-Cに文句を言うのは勝手だが、
経験豊富なプログラマであれば言語に左右されない美しいアプリを作れるはず。
164:名称未設定
08/11/09 15:18:38 uAivnwgs0
そういうこと言うと、論点ずらしって言われるぞ。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5383日前に更新/262 KB
担当:undef