【Cocoa】Macプログラマのスレ【Objective-C】

■ このスレッドは過去ログ倉庫に格納されています
1仕様書無しさん
垢版 |
2008/06/23(月) 17:06:37
Apple Developer Connection
http://developer.apple.com/jp/

関連スレ
Macでプログラミング{8}
http://pc11.2ch.net/test/read.cgi/mac/1195385771/

Objective-C [ObjC part:3];
http://pc11.2ch.net/test/read.cgi/tech/1186543111/

【マック】Macintoshプログラミング質問箱
http://pc11.2ch.net/test/read.cgi/tech/1113058054/

Cocoaはさっぱり!!! version.X(10)
http://pc11.2ch.net/test/read.cgi/mac/1211290055/

Xcode part6
http://pc11.2ch.net/test/read.cgi/mac/1201693264/
2009/08/25(火) 06:03:17
んなこたぁない
2009/08/25(火) 09:20:18
ディレクトリが違っているとか・・・
2009/08/25(火) 15:15:48
ここで書かれている\は円記号であってバックスラッシュではない
ひねりが加わっているが "hello\ world.out" も円記号とスペースを含むファイル名である。

つまり、、、、
2009/08/25(火) 19:56:33
shellの挙動になれるまでは無理にファイル名にスペースいれないほうがいいと思うんじゃが
2009/08/26(水) 09:01:46
>>68
疑り深い奴だなぁ。ほれ。
$ cat hello¥ world.c
#include <stdio.h>
int main(int argc,char *argv[]) {
printf("Hello World¥n");
return 0;
}
$ cc hello¥ world.c -o hello¥ world.out
$ ./hello¥ world.out
Hello World
$
2009/11/03(火) 17:09:55
複数のページを持つ PDF ファイルから、各ページのサムネール画像を生成したいと思っています。生成する画像フォーマットは GIF か JPEG を考えているんですが、面倒でしょうか?
PDFkit ってのがるみたいで、そいつを利用したら簡単にできるかなと思っています。

普通に Windows で組むと Adobe のデベロッパライセンスが必要なみたいなんで…

これが可能なら、Mac で作ろうと思っている状態です。
2009/11/08(日) 12:50:08
>>面倒でしょうか?

面倒か面倒でないか、何を基準におまえにアドバイスすればいいんだ?
2009/11/08(日) 14:48:59
今、PDFkitのリファレンスをざっと眺めたんだけど、
ページのイメージを画面に表示するとかプリンタに出力するとかはあるんだけど、
画像ファイルとして書き出すのは無いっぽいな。
77仕様書無しさん
垢版 |
2009/11/08(日) 15:37:17
NSPDFImageRepってのがあるからできるんじゃね?
2009/11/09(月) 01:42:23
NSImageではなくCGImageを使った方がいいらしい。
http://stackoverflow.com/questions/1298632/pdf-to-jpg-conversion-in-cocoa
79仕様書無しさん
垢版 |
2010/01/28(木) 16:38:24
学習のためだけにいちいちWinで読み込んでからMacで使うのが煩わしいので
WinにあるアプリケーションをMac用に個人的に移植するにはどうすればいいのでしょうか?
2010/01/28(木) 20:17:45
VMWare Fusion でも Parallels でも BootCamp でもなんでもご自由に
2010/01/28(木) 20:55:19
すまんそのようなソフトがあるのはもち知ってる
おれはWinのアプリをMacで使うためにとは聞いてないんだ
作ってみたかったから聞いてみたんだがスレ違いなんかな・・・
82仕様書無しさん
垢版 |
2010/01/28(木) 21:01:10
Xcodeでフルスクラッチで書けばいいんじゃないかな。
2010/01/29(金) 10:45:27
俺もフルスクラッチって書こうとした
2010/01/29(金) 16:06:29
まず、該当ソフトのソースコードを入手します。
次にソースコードを解析します。
そしてMac用に組みなおします。

簡単ですね。
2010/01/29(金) 18:30:42
81にかかればお茶の子さいさいだな。
86仕様書無しさん
垢版 |
2010/03/09(火) 21:13:59
@interface MyList : NSMutableArray
{}
@end

っつうクラスを作ったんだけど、NSMutableArrayのメソッドを呼出せないのは何故でしょう.
下記のコードが実行時に例外で死にます。

int main( int argc, char* argv[] )
{
MyList* list = [ [ MyList alloc ] init ];
[ list addObject: [ NSString stringWithFormat: @"%d", argc ] ];
}
2010/03/09(火) 23:12:01
あのな、NSArray, NSMutableArray ってのはクラスクラスタ、ちゅーやつでやな、
そのまま継承しても、実体を伴わんのや。中身を用意したらんとあかん。
ちょっとめんどいで、ええか?難しゅう言うとな、必須のメソッドと、データ構造を
持ってないと、NSArrayとして機能せんのや。よーリファレンスを読んでみ、その辺
ちゃーんと書いてあるわ。まぁ簡単に言うとな、NSArray にいるメソッドは、 count,
objectAtIndex:, lastObject, の3つや。Mutableはさらに、addObject:, insertObject:,
removeLastObject, removeObjectAtIndex, replaceObjectAtIndex:withObject:
の…ひの、ふの、…まぁ、ギョーサン実装せなあかんちゅうこっちゃ。
その代わりや、こいつらさえ実装しとけば、中身のデータ構造がどないやっても、
外から見たら配列になっとる、ちゅー訳や。まぁ、面倒くさかったらな、
@interface MyMutArray : NSMutableArray {NSMutableArray *hoge;}@end
@implementation
- (NSUInteger) count { return [hoge count]; } // 以下、色々略
みたいにしとけばええわ。あとはcontentArrayがよろしうやってくれる。
2010/03/09(火) 23:21:18
大阪弁でありがとうございます。
2010/03/10(水) 09:37:02
>>87
大門社長の声で脳内で再生された
90仕様書無しさん
垢版 |
2010/03/14(日) 01:59:54
webからデータを収集するアプリを作って遊んでいます。
しかし、

NSData data = [ NSData dataWithContentsOfURL: url ];

を連発すると、ポートを使い果たしてしまい、プログラムが終了してしまいます。
対処法を教えて下さい。
2010/03/14(日) 02:09:26
まずはアスタリスクが必要かなあ。
2010/03/14(日) 02:16:25
お前ニキビができるとイジクリまわすだろ。
2010/03/14(日) 02:45:01
  ∧∧ コイヤァァァァ!!
 (д´*)
 (⊃⌒*⌒⊂)
  /_ノωヽ_)
2010/03/14(日) 03:21:13
君の使い古したポートに用はないのだよ。

[ NSData dataWithContentsOfURL: url ]

がポートを食い尽くす問題に答えてやってくれ。
95仕様書無しさん
垢版 |
2010/03/14(日) 15:05:21
[ NSData dataWithContentsOfURL: url ]

でurl毎にコネクションを張って、ガベコレ時に行われるポートの解放が追いついていないと推測。
コネクションを自分で管理すればいいんでないか。おれはやり方判らんけど。
2010/03/15(月) 12:03:34
If you need to know what was the reason for failure, use dataWithContentsOfURL:options:error:.
俺ならとりあえずこれを使ってみるかな。
ダメなら、エラーが分かればそれに沿った対応するけど、分からないので、signal(3)系統を使う。
2010/04/05(月) 12:29:21
ここあはやっぱりもりなが
98仕様書無しさん
垢版 |
2010/05/04(火) 17:17:15
Windows用のコンパイラーとかありますかい?
2010/05/05(水) 01:38:30
>>98
Objective-C のコンパイラはある。
Windows 版の Cocoa は無い。
2010/05/05(水) 10:50:15
誰かCocotronでなんか作った香具師いる?
2010/08/09(月) 11:32:49
HyperCardのスタック作者が集うスレはここですか?
2010/08/11(水) 16:07:10
プログラミングごとき13インチMBPで十分と思ったが、画面狭すぎてXcode使いにくいナリ・・・
2010/08/13(金) 09:36:05
>>102
リッドクローズで使うんだ。(マテ
2010/09/03(金) 11:01:23
HMDT本って、Amazonのレビューを読むと3は2の続編らしいんだけど、3冊全て読んだ方が良い?
2010/09/03(金) 11:32:10
3は CoreData の解説がよい。CoreData 触るつもりならお勧め。
とりあえず、買って損はない内容。1飛ばして 2, 3 でもいけるかも。
2010/09/03(金) 20:43:23
というか2は1のただの改訂版だから2, 3だけでいい
2010/09/06(月) 10:44:16
>>105-106
ありがとうございます。2と3を買って勉強します。
2010/09/16(木) 02:36:34
配列に入れてるNSString*型の文字を取り出したくて、descriptionを使ったのですが、
NSLogで見ると文字化け?してしまいます。どうしたら元のまま取り出せるでしょうか?

NSArray* arrayTemp = [NSArray arrayWithObjects:@"A",nil];
NSString* stringTemp = [arrayTemp description];
NSLog(@"stringTemp is %s",stringTemp);

2010-09-16 01:50:24.925 if==[1940:207] stringTemp is `_?≠
2010/09/16(木) 10:10:00
NSLog(@"stringTemp is %@", stringTemp);
で幸せになれる。%s はC文字列、%@ はObj-C obj。
NSLog(@"arrayTemp is %@", arrayTemp);
でも幸せになれるであろう。
2010/09/16(木) 10:20:18
%sじゃなくて、%@じゃない?
2010/09/16(木) 11:29:46
Descだとマルチバイト文字はU+なんたらにエンコードされるんだよ。
112108
垢版 |
2010/09/16(木) 17:13:03
>>109
>>110
ありがとうございます。

しかし%@で取り出すと、次に
if (stringTemp == @"A")
が真にならないという事が起きました。

自分の用事はただ単にobjectAtIndexで取り出せばよかったと言う大ボケでしたが、
(それは配列objのままで抜き出してしまうと勘違いしてた)
%@で判断して無視された後にNSLogで%@で見るとちゃんと"A"が表示されるので混乱しました。

>>111
ありがとうございます。
実はエンコードは色々試したのですが、私の見たものの中では無かったです。
良ければどんなメソッドで戻せますでしょうか教えて下さい。
2010/09/16(木) 17:37:47
>>112
> if (stringTemp == @"A")
> が真にならないという事が起きました。

ポインタの比較してどうする。
内容の比較するなら isEqualString: 使えよ。
2010/09/16(木) 18:00:33
NSLog(@"%d", [stringTemp length]);
NSLog(@"%d", [@"A" length]);
2010/09/16(木) 18:37:13
>>112
>113フォロー、-isEqualToString: (NSString なら isEqual: と同じ)ね。
Cでも、char *strA = "A"; char *strB = "A"; strA == strB は偽になるでしょ。
strcmp() で比較するように、isEqualToString: で比較する。

>>114
何が言いたいのかさっぱり分からん。
NSLog(@"%p %p", stringTemp, @"A") ならまだ理解できるが…
116114
垢版 |
2010/09/16(木) 18:45:10
9と1が表示されます。
117114
垢版 |
2010/09/16(木) 18:55:57
>>115
追加で、真になりました。環境依存?
const char *strA = "A";
const char *strB = "A";
if (strA == strB ) {NSLog(@"true");}
else {NSLog(@"false");}
2010/09/16(木) 19:06:20
>>116
分かった。stringTemp = [arrayTemp description]; のつもりなのね。
>112 に「objectAtIndex: で(ry」とあるので、たぶん取り出したんだろ。
ま、確かにもうちょっと分かりやすく書いて欲しいね。
「%@で判〜」のところは何言ってるのか分からんしw
2010/09/16(木) 19:13:49
>>117
コンパイラ賢いな。ごめん、うちもなったw じゃあこれ、
char strA[2] = "A"; char *strB = "A"; これで比較したらならないはず…
120114
垢版 |
2010/09/16(木) 19:41:08
>>119
それだとこっちの環境でも偽になりました。strcmpは0の等しいを返すし。
2010/09/16(木) 19:51:52
>>114
ポインタ比較やってるからそれで正しい。strcmp は値である「文字列」を比較している。
NSString * でも、同じこと。どうやら君は「ポインタ」の理解が足りてないようだ。
122114
垢版 |
2010/09/16(木) 20:36:08
>>121 アンカーが114になってますけど、>>120の内容についてってことでいいです?
>>120についてなら、書いてあることは理解できるけど、
>>114についてだとちょっと理解できないので、補足していただけるとありがたい。

ポインタは難しい。
2010/09/16(木) 21:17:27
>121 は >120 の内容についてでおk
もしかして >121≠ >108 なのか?もうわけわからん…
124114
垢版 |
2010/09/16(木) 21:28:55
>>123 == >>121だろうw。
>>114 != >>108ですよ。
2010/09/16(木) 22:29:00
なんというアンカの嵐w
126108
垢版 |
2010/09/16(木) 23:06:52
つまり、ポインタ変数のアスタリスク無し表記は、
内容を指したアドレス値を表していると思えば良いのですね。

で、演算子は内容を参照する機能はないと言う事ですね。
127121, 123
垢版 |
2010/09/17(金) 10:06:12
>>114
混乱して途中から>108 = >114 だと思ってたよ、すまない。
しかも>123でアンカミスしてたのねorz IDでないと分かりにくいなぁ
メモリ確保の領域が違うからね、その辺調べるといいよ>char strA[2] = "A", *strB = "A";


>>108
だいたいあってる。けど、ちゃんと書籍などでポインタを理解した方がいいよ。
「C言語ポインタ完全制覇」って本が定評。
ポインタの差す先の値をとってくる間接参照演算子(*)というのもある。
128108
垢版 |
2010/09/18(土) 13:31:47
>>127
ありがとうございます。ここですね。
http://kmaebashi.com/programmer/pointer.html
129108
垢版 |
2010/09/18(土) 13:35:40
また質問なんですが、
参照カウントの勉強にサンプルを書いて色々な所でretainCountをNSLogに出してみたのですが、意外な結果ばかりでます。

まずNSString*の変数ですが、それをretainCountするとメチャクチャな数字が出ました。

NSString* string = @"baka";
NSLog("%d",[string retainCount]);

仕方がないので、自前でクラスを作りました。

呼び出し側クラス
MyClass* myClass = [MyClass alloc];
myClass = [myClass?xA0;myMethod:myClass];

呼び出され側クラスのメソッド
- (MyClass*)myMethod:(MyClass*)myClass;{
?xA0;?xA0;return myClass;
}

例えば、allocの行の下に
NSLog("%d",[myClass retainCount]);
を仕込みますと、当然1が出ますが、
myMethodのreturnの上の行にそれを置くと、-1と出ました。
自分の理解では合成される毎にretainCountが増えると思っていたのですが。。

どう考えたら良いのでしょうか?
130108
垢版 |
2010/09/18(土) 13:51:30
すいません
xA0;
と言う意味不明暗号が表示されているかもしれませんが、
それはスペースと読み替えてください、、。
2010/09/18(土) 14:08:17
retainCountなんてただの飾りです

そして、-1を返すのは正しい実装です。
(まあ、実際はNSUIntegerなので-1じゃなくてNSUIntegerMaxなんですけどね)
2010/09/18(土) 14:14:53
これだけじゃ不親切か

オブジェクトにはあなたが期待するとおりretainCountが変動するものと、そうでないものがあります
NSStringオブジェクトはretainCountが期待するとおり変動しないオブジェクトのひとつです
133仕様書無しさん
垢版 |
2010/09/18(土) 23:56:33
>129
なるほど。
そうすると、同じ仕組みで解放されないクラスを作成することができそうですね。

2010/09/19(日) 16:14:49
>>133
シングルトンクラス(開放されないオブジェクト)の作り方は、
Cocoa Fundamental Guide の Cocoa Design Patten にのってる。
あとメモリ管理ガイド(iPhone dev で日本語版あり)を読んでおくといい。
135108
垢版 |
2010/09/21(火) 16:15:00
>>132
ありがとうございます。
実はobjective-c入門の本を読んでもメモリ全然分からない、、。
2010/09/21(火) 20:38:13
萩原本を読み返しつつ、Analyze して出た警告を対処していったり、Instruments が拾う Leak を逐一解消していったら作法が分かる。
2010/09/21(火) 21:16:22
使ったこと無いけど、GCで解決な気が。
2010/09/22(水) 09:38:48
GCに頼っていたらiPhoneアプリが作れないからダメだ。
2010/09/22(水) 15:51:56
今すぐiPhoneアプリ開発するならそうだけど、
悩んで進まないくらいなら、GC使ってさっさとアプリ作った方が楽しいと思うけどな。
140108
垢版 |
2010/09/24(金) 20:25:48
>>136
立ち読みしました。ピンクの入門の本より全然わかりやすいです。
要はcopyとかnewとかallocとか書いてるメソッドで生成させたのだけをreleaseすれば良いんですね。セッター絡みの作法も良くわかりました。後ここのpdfもわかりやすかったです。
http://iphone-dev.g.hatena.ne.jp/tokorom/20091213/1260723681
2010/09/24(金) 21:01:03
>立ち読みしました。ピンクの入門の本より全然わかりやすいです。
良かったなら買ってやれよ。
142108
垢版 |
2010/09/24(金) 22:09:11
>>141
ピンクの入門を買ってしまった事がそれを微妙に躊躇させます、、。
ピンクも上での基本を押さえれば、外人の文章によくある、含みのある表現も理解出来ました。
2010/10/19(火) 09:37:50
すいません、switch文で定数と比較したいのですがエラーになります

#define aaa 15;
...

switch (bbb) {
case aaa: NSLog(@"yes"); break;
}

144仕様書無しさん
垢版 |
2010/10/19(火) 09:47:58
そのセミコロンはなんだ?
145143
垢版 |
2010/10/19(火) 10:40:58
defineの;いらないんですね!エラー出なくなりました。
基本的な事ですんません tks
2010/10/19(火) 11:05:28
新構文かと思った。
147仕様書無しさん
垢版 |
2010/10/28(木) 07:32:19
質問です。
NSOpenGLViewの乗っかったNSWindowで透明をやりたいのですが
(ウィンドウの向こうが透けている)失敗しています。

まずNSWindow。
[window setBackgroundColor: [NSColor clearColor]];
[window setOpaque:NO];
これでウィンドウは透明に出来た。多分これでいいのかと。
しかし、NSOpenGLViewでつまづいてます。

-(void) drawRect: (NSRect) dirtyRect {
glClearColor( 0.0f, 0.0f, 0.0f, 0.0f );
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

}
でビューが真っ黒に。glClearColorのアルファ=0.0なんだけど。
ちなみに、アルファ=0.5でも真っ黒ですね。
NSOpenGLViewの段階で、ビューの向こうが透けて見えるように
するには、どうしたらいいのでしょう?
2010/10/30(土) 20:27:11
iPhoneでNSHTTPStorage setCookieでNSHTTPCookieを保存しようとするんですが、ログに吐き出しても反映されていないようです。
使い方間違っているのでしょうか?
2010/11/03(水) 01:57:15
UIWebViewのUser-Agentを変えたいんだが。
2010/11/03(水) 08:04:59
好きにしろ
151仕様書無しさん
垢版 |
2010/12/01(水) 23:29:41
NSDataのなかの特定の範囲のバイト列を取り出して、32ビットのint型に
変換したいのですが、どのような方法がありますでしょうか?

subdataWithRange:NSMakeRange(3,4) のようにしてバイト列を
取り出すと思うのですが、このあとどうすればよいかわかりません。
152151
垢版 |
2010/12/01(水) 23:51:16
これ↓でやりたいことはできそうなのですが

int32_t datasize;
[data getBytes:&datasize];

できれば、JavaにあるByteBufferのgetIntのような感じで取得したいのですが
そういう方法ってありますか?


153Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/04(土) 14:54:38
OS8,9時代をしらないガキマカはしね
154仕様書無しさん
垢版 |
2010/12/04(土) 15:12:40
わーい
久しぶりにおかしな人が来たw
どうして死なないといけないの?w >おじいさんw
2010/12/05(日) 11:10:11
8,9程度でイキがってんじゃねえよハゲ
せめて7
2010/12/05(日) 21:43:10
>>155
ああ、おにぎりな。
E電並に定着しなかったが、中身は進化したね。
157Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:07:06
俺は8,9時代を謳歌したからな

Macコミュも制覇してきたし

今ではハッカーとして落ち着いてきてるしな

ハゲはてめえだろハゲ

Objecitve−Cだろこら いまじゃMacつかってねえからな

またやろうかな
Macアプリ作りたかったんだけどな なんていうかiphoneだらけだったしな
さすがにMacアプリなんてあれだろ
だからPerlにしたんだけどな

昔のマックはお正月に あけましておめでとうとか出たしな
プラチナサウンドの響きがここちよくてな うざくなってきたけど
酒井さんのゲームなどハピネス 侍道 オレバス...etcなどいろいろやってたけどな

ど素人がわめいてんじゃねえよこら
2010/12/06(月) 00:09:22
ごめん
それ自称上級者(≒素人に毛が生えた程度)の発言にしか見えんわ
159Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:10:22
自称じゃなくて上級者だからな

知ったかぶりすんなよ
160Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:11:35
マカーって独特の反論があるよな

単芝つけてきたり

すばやい応答 暇人ニートの巣窟だからなゴミマカは

ワインやブランデーなどの酒の画像とかアップしてるカスマカ多いわ
2010/12/06(月) 00:12:05
コレはひでぇw

って相手してもらえるのが嬉しいだろうなこのハゲ
162Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:12:32
てめえも所詮カスマカ

マカーから脱皮できないごみ

ターミナルかちかちいじってるゴミだよ

ポートでぶちこんでる低能 とりあえずosx進めてる低能
お前らみたいなごみな

ゴミはしねな
死ね
163Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:14:18
マカーの限界ってしってる?

製品などでわめいてるだけ、だからお前らは新作製品でわめくことしかできないんだよ
マカコミュでアップル製品について熱弁してればいいよ

プログラミングもできねえごみw

Perlやってるやついたなクソマカに、大してできてねえごみみたいだったけどw
ログ編集してる程度のカスw
164Perl忍者 ◆M5ZWRnXOj6
垢版 |
2010/12/06(月) 00:18:48
hapyer cardとかもそんなもん知ってるしな
あの絵本みたいなやつだよな 白黒の

Macのこと+コミュならほぼ知り尽くしてるよ

ほぼ知ってるし

低レベルなんだよお前ら
2010/12/06(月) 00:28:20
つか俺マカじゃないんで
サーセンwwww
166仕様書無しさん
垢版 |
2010/12/07(火) 09:53:02
意外に礼儀正しい良い人で笑ったw

おじいさんとか言ってごめんなさい
2010/12/08(水) 10:22:28
iphoneの開発ツールでObject-C使わなくてもC++で出来るってフリーソフトがあるんだけど
それで作ってる人おらぬ?
2010/12/10(金) 18:04:05
>>167
kwsk
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況