サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。

iPhoneアプリの良いアイデアが出たので、これから作り始めようというところである。 さて、iPhoneアプリ開発童貞ってわけではないが、今までただ闇雲に作っていた感があるので、 実際にXcodeを起動してコードを書き始める前の設計をどうしていこうかと考えている。 ソフトウェアの作成はじめてではもちろん無いのでだいたい勝手は分かるものの、 iPhone特有の設計思考が必要な気がして、文献を漁っている。 ところが、世に出回っているiPhoneアプリ本にはUIKitをいじくるだけの解説ばかりではないか! で、つまるところ設計について有益だと思えたのは以下3つの文献だった。 「iOSアプリケーションプログラミングガイド」Appleのサイトからダウンロードできる 「iPhoneアプリ設計の極意 - 思わずタップしたくなるアプリのデザイン」のfladdictさんの章 「iOS開発におけるパターンによ
Appleから提供されているiOSのプログラミングガイド。日本語に翻訳されたiOSのドキュメントがあります。iOSデバイス向けのアプリを開発するにあたっては、必読の内容となっています。 これらは全てPDFで提供されています。 ですのでiPhoneでPDFを開き、iBooksで保存することが出来ます。 このように、持ち運んで空き時間に勉強できるんです。 PDFのリンクは下記にまとめていますので、iPhoneでご覧ください! iOSのドキュメント一覧(2011.8.20現時点) Audio & Video AV Foundationプログラミングガイド iOSカメラプログラミングトピックス Audio Session プログラミングガイド Core Audio の概要 iPodライブラリアクセス プログラミングガイド Tools & Languages Objective-C
Apple Vision Proを体験する機会があったので、感想をまとめました。 主に普段使っているMeta Quest 3との比較になります。なお、裸眼での試用だったため、解像感については評価できていません。 装着感 手に持った時の重さは明らかにVision Proの方がMeta Quest 3より重いですが、装着感は同様に感じました。試したのは後頭部だけで支えるタイプのバンドで、ダイアルを回して締め付ける操作が面白かったです。 パススルー Meta Quest 3では歪んで見える至近距離のiPhoneが、Vision Proでは歪まずに正しい形で見えました。ただし、Meta Quest 3も最近のアップデート(v64, v65)でパススルー性能が向上しているため、1m以上離れた物の見え方については同等に感じました。 視線トラッキング 視線のキャリブレーションを行った後は、視線でのアイコ
iPhone開発で、メモリ管理の基礎を社員に伝えることが増えてきたので、エントリとして書こう。 Objective-C基礎 メモリ管理の前にObjCの基礎として、メソッド呼び出しの話。 クラスのインスタンスaがmethodAをコールするときは、 [a methodA] と書く。このとき、aがnilだったときは、エラーではなく、コールされない。methodAに戻り値があるときは、それは、0やnilやNOが返る。ObjCでは、 void dealloc { if(a!=nil){ [a release]; } [super dealloc]; } は、気持ち悪いので、nilチェックはやめましょう。 なお、ObjCでは、動的にメソッドを差し替えることができ、コールの度にメソッドが存在しているかも確認しています。そのため、LL言語(ライトウェイト言語、スクリプト)のように柔軟な記述が可能です。そし
Upon first glance, the UIButton class doesn’t seem to provide what you might expect in terms of customization. This often causes developers to resort to creating buttons in an image editor and then specifying that in the Background field in Interface Builder. This is a fine solution and will likely give you what you need, but with Core Animation layers there is a simpler way to achieve the look yo
Welcome to the source code repository for the 3.0 edition of the iPhone Developer's Cookbook. Sample code is never a fixed target. It continues to evolve as Apple updates its SDK and the CocoaTouch libraries. Get involved. You can pitch in by suggesting bug fixes and corrections as well as by expanding the code that's on offer. Github allows you to fork repositories and grow them with your own twe
昨日のモバイル・カフェでGameKit(の一部)を説明したので、その資料とサンプルコードを公開しておきますね。横着するためにErica Sadun女史の書籍「iPhone Developer’s Cookbook, 3.0 Edition」のサンプルコードからGameKitHelperを利用しています。 簡単GameKit-P2P (PDF) サンプルコードSmash-X このサンプルは「iPhone SDKの教科書」に掲載したSmashを拡張して、2台のiPhoneのスクリーンを横断するようにUFOが飛び回るというものです。オリジナル版と同じく、指でタップしてUFOを叩き潰すこと(Smash)もできます。通信以外のキモはboundsプロパティの使い方かな。 Ustreamでは1時間13分あたりから。この時はBluetooth接続に手間取ったのですが、すぐに接続できる時もありますね。ちょっ
iPachiで起きていた不具合なのですが、 特定の画面を表示中にメモリ不足に陥り didReceiveMemoryWarningを受け取ると アプリがクラッシュするという問題をついに 解消しました。 didReceiveMemoryWarning後にクラッシュするので メモリ管理でどこかがおかしくなっているのだろうとは 予想がつくのですが、いかんせん貧弱なエラーメッセージの ため、まったく発生元がつかめませんでした。 EXC_BAD_ACCESSとか言われてもさっぱりわからんです。 が、すばらしい記事をみつけました。 NSDebugEnabled これでクラッシュをおこしているオブジェクトの生成場所を 特定できるので、格段にデバッグ効率があがります。 というわけで、エミュレータでのメモリ不足時のシミュレートと デバッグのための設定をまとめます。 エミュレータでのメモリ
<?xml version="1.0"?> <feed xmlns:idx="urn:atom-extension:indexing" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:media="http://search.yahoo.com/mrss/" xmlns="http://www.w3.org/2005/Atom" idx:index="no"> <!-- Content-type: Preventing XSRF in IE. --> <generator uri="http://www.google.com/reader">Google Reader</generator> <id>tag:google.com,2005:reader/user/10689165820831989733/state/c
前回はRSSフィードをダウンロードするところまで説明した。今回は、ダウンロードしたXMLデータをパースすることについて、説明しよう。 iPhoneのXMLライブラリ iPhoneは、標準で2種類のXMLをパースするためのライブラリを備える。libxml2とNSXMLParserだ。 libxml2はGnomeプロジェクトで開発された、XMLのパーサライブラリだ。もともとは、GnomeというLinuxディストリビューションの1つに対して開発されたものだが、MITライセンスのもとでソースコードが公開されているため、多くのプラットフォームに移植されている。もちろんMac OS Xにも移植され、それがiPhoneでも使えるようになっている。 libxml2の特徴は、高機能である事だ。まず基本的なXMLパーサ機能として、SAXおよびDOMパーサを提供する。さらに、XMLに関する多くの標準に対応してい
iPhoneアプリを作ってみたいと思い、手探りで勉強をはじめだしたところ。 とりあえずRSSのパースからやってみようと思ったら速攻でハマったのでメモメモ。 前提 iPhone でXMLのDOM解析を行う - 謎言語使いの徒然に従って、GDataXMLNodeというのを使ってXMLのパースをする とりあえずローカルに実際にあるフィードのRDFファイルを用意してそれを読み込んでNSLogでタイトルだけでも出してみる ハマった所 そのままやったのに空データが返って来てムキャー!ってなった 結論 ハマった理由はnamespaceでした ちゃんとnamespaceを考慮しましょう iPhone でXMLのDOM解析を行う - 謎言語使いの徒然の通りにやればXMLのパースはできます コピペだけでできちゃうなんて嬉しすぎるね! 【iPhone】KissXMLで快適パース生活 | iPhoneアプリ開発で
デフォルトの NSXMLPerser がシーケンスアクセスしかできなくてとても扱いづらい。 かといって、根っこの libxml2 は高性能で早くて DOM 使えるのにドキュメントが腐ってて扱いにくい。 で、探して見っけたのがこれ http://code.google.com/p/gdata-objectivec-client/ 使い方は、以下の通り。 Frameworks を右クリック、追加、既存のフレームワーク /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.1.sdk/usr/lib/libxml2.2.dylib をさくっと選択。 ターゲットのバイナリをライブラリにリンクに、libxml2.dylib をドロップ。 ターゲットを開いて、ビルドタブを開き、「リンク」「他のリンカフラグ」に「-lxml2」
INDEX>SwiftUI > Views and Controls テキストフィールド Swift struct TextField<Label> where Label : View 解説 A view that displays one or more lines of read-only text. フレームワーク SwiftUI クラス 使用可能 参照 更新時のバージョン 関連記事(外部サイト) 例文 Swift @State private var name = "" var body: some View { VStack { TextField("your name?", text: $name) .textFieldStyle(RoundedBorderTextFieldStyle()) .padding() Text("Hello, World!") .frame(ma
配列とループ処理を理解しよう:Cocoaの素、Objective-Cを知ろう(5)(1/4 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基本を理解しよう(編集部) 第4回「変数のデータ型や文字列の扱いを理解しよう」に引き続いてコーディングの必須要素について解説します。今回のテーマは配列とループ処理です。 プログラムのロジックでは、値の集合や、そこに含まれる各データを扱う処理(検索やループ処理など)が頻繁に登場します。そのため、その仕組みが充実しているかどうかで、言語の使い勝手も大きく変わってきます。 さまざまなプログラミング言語が、それぞれの方法で値の集合を扱う仕組みを提供しています。Objective-Cでは、Foundationに関連クラスが用意されていますので、今回はその使い方を紹介したいと
With this I’m assuming you have a bit of familiarity with the iPhone SDK – you can download it for free from Apple’s site, and follow along here. We’re going to build an RSS feed reader for a simple feed (from The Apple Blog, no less). Let’s get started Open Xcode and choose the “File” menu, in which you’ll click the “New Project…” item. Click “Application” under “iPhone OS” in the list at left. O
alloc Foundation, NSObject, 10.0 メモリを確保してインスタンスを作ります 解説 メモリを確保してインスタンスを作ります。 サブクラスはオーバーライドしてはいけません。代わりにそのクラス専用の初期化メソッドとしてinit...メソッドを使用します。 不要になれば、releaseかautoreleaseでメソッドを解放する必要があります。 新たに作成されたインスタンスのisaインスタンス変数は初期化されます。 他の全てのインスタンス変数のためのメモリは、0までセットされます。 新しいインスタンスは、デフォルトのゾーンからアロケートされます。 特定のゾーンを使用する場合はallocWithZone:を使用してください。 初期化プロセスを完了させるためには以下のような形式でinit...メソッドを使用します。 TheClass *newObject = [[TheC
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く