タグ付けされた質問 「cocoa-touch」

iOSアプリを駆動するCocoa Touch Frameworksは、Macに見られる多くの実績のあるパターンを共有しますが、タッチベースのインターフェースと最適化に特に重点を置いて構築されました。

5
iCloudの基本とコードサンプル[クローズ]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 9年前に閉鎖されました。 初心者として、私はiCloudに苦労しています。いくつかのサンプルがありますが、それらは通常非常に詳細です(開発者フォーラムには、iCloudとCoreData用の膨大なサンプルがあります)。リンゴのドキュメントはOKですが、私はまだ大きな画像を見ることができません。ですから、ご容赦ください。これらの質問のいくつかは非常に基本的なものですが、おそらく答えるのは簡単です。 コンテキスト:非常に単純なiCloudアプリを実行しています(以下の完全なサンプルコード)。ユーザーに表示されるUITextViewは1つだけで、ユーザーの入力はtext.txtというファイルに保存されます。 txtファイルはクラウドにプッシュされ、すべてのデバイスで利用できるようになります。完全に機能しますが、次のようになります。 主な問題:iCloudを使用していないユーザーはどうですか? アプリを起動すると(以下のコードを参照)、ユーザーがiCloudを有効にしているかどうかを確認します。iCloudが有効になっている場合は、すべて問題ありません。アプリは先に進み、クラウドでtext.txtを探します。見つかった場合は、それをロードしてユーザーに表示します。text.txtがクラウドで見つからない場合は、新しいtext.txtを作成し、それをユーザーに表示します。 ユーザーがiCloudを有効にしていない場合、何も起こりません。iCloud以外のユーザーが引き続き私のテキストアプリで作業できるようにするにはどうすればよいですか?それとも単にそれらを無視しますか?iCloud以外のユーザーのために別々の関数を書く必要がありますか?つまり、ドキュメントフォルダからtext.txtをロードするだけの関数ですか? Appleはこう書いている: アプリサンドボックス内の他のすべてのファイルを処理するのと同じ方法で、iCloud内のファイルを処理します。 ただし、私の場合、「通常の」アプリサンドボックスはもうありません。クラウドにあります。または、常に最初にディスクからtext.txtをロードしてから、iCloudで最新のものがあるかどうかを確認しますか? 関連する問題:ファイル構造-サンドボックスとクラウド おそらく私の主な問題は、iCloudがどのように機能するかについての根本的な誤解です。UIDocumentの新しいインスタンスを作成するときは、2つのメソッドを上書きする必要があります。最初- (BOOL)loadFromContents:(id)contents ofType:(NSString *)typeName error:(NSError **)outErrorにクラウドからファイルを取得し、次に-(id)contentsForType:(NSString *)typeName error:(NSError **)outErrorファイルをクラウドに取得します。 text.txtのローカルコピーもサンドボックスに保存する個別の関数を組み込む必要がありますか?これはiCloud以外のユーザーでも機能しますか?私がiCloudを理解しているので、text.txtのローカルコピーが自動的に保存されます。したがって、アプリの「古い」サンドボックスに何かを保存する必要はないはずです(つまり、iCloud以前の古いものでした)。現在、私のサンドボックスは完全に空ですが、これが正しいかどうかはわかりません。text.txtの別のコピーをそこに保持する必要がありますか?これは私のデータ構造を乱雑にしているように感じます...クラウドに1つのtext.txtがあり、1つはデバイスのiCloudサンドボックスにあり(オフラインでも機能します)、3つ目はの古き良きサンドボックスにあります私のアプリ... 私のコード:簡単なiCloudサンプルコード これは、開発者フォーラムとWWDCセッションビデオで見つけた例に大まかに基づいています。私はそれを最小限に取り除いた。私のMVC構造が良いかどうかはわかりません。モデルはAppDelegateにありますが、これは理想的ではありません。それをより良くするためのどんな提案も歓迎します。 編集:私は主な質問を抽出して[ここに]投稿しようとしました。4 概要: クラウドからtext.txtをロードする最も重要なビット: // AppDelegate.h // iCloudText #import <UIKit/UIKit.h> @class ViewController; @class MyTextDocument; @interface AppDelegate : UIResponder <UIApplicationDelegate> { NSMetadataQuery *_query; } @property (strong, nonatomic) UIWindow …

5
MKMapViewズームとリージョン
私はGoogleMaps JavascriptAPIの使用に精通しています。最近、iPhoneプロジェクトでMapKitフレームワークを使い始めましたが、ズームや地図上の地域の設定を理解するのに苦労しています。 Google Maps APIでは、単純な関数setZoom()とともに、8、9、10などの整数ズームレベルを使用していました。MapKitフレームワークで確認できる唯一の同等のメソッドはsetRegion:animatedです。私が理解しているように、ズームレベルを指定するには、リージョンのスパンの緯度と経度の「デルタ」値を設定する必要があります。しかし、私はこれらの値が何を表しているのか本当にわかりません(私はドキュメントを読みました)。 MKMapViewデリゲートを使用して、regionDidChangeデリゲートメソッドのスパン値をトレースすると、結果が相互に相関していないようです。ズームアウトして、ドキュメントで指定されているようにスパンデルタ値が増加していることを確認しても問題ありません。しかし、突然、ズームせずにマップをドラッグすると、デルタ値が0.0になります。 誰かがこれらのスパンとデルタへの基準点は何であるか説明できますか?または、整数ズームレベル(9など)をこれらのデルタ値に変換するアルゴリズムはありますか? ボーナスの質問として、MKMapViewで最小-最大ズームレベルを指定する方法はありますか:) ありがとう

4
別の変数と比較する前に、変数に文字列を割り当てる必要がありますか?
の値をNSString文字列「Wrong」と比較したいと思います。これが私のコードです: NSString *wrongTxt = [[NSString alloc] initWithFormat:@"Wrong"]; if( [statusString isEqualToString:wrongTxt] ){ doSomething; } 「間違った」のNSStringを本当に作成する必要がありますか? また、ラベル値を文字列に割り当てずに、UILabel'sの値をtext文字列と比較できますか?

12
NSTimeIntervalからHH:mm:ss?
NSTimeIntervalが200.0に設定されている場合、それを00:03:20に変換する方法はありますか?それを使用してNSDateを初期化し、HH:mm:ssを使用してNSDateFormatterを使用できると考えていました。私の質問は、これを行う簡単な方法はあります[NSString stringWithFormat: %02d:%02d:%02d, myHour, myMin, mySec]か、それとも自分で番号を分割して使用する必要がありますか?

10
iPhoneアプリ用の既製のカレンダーコントロールはありますか?[閉まっている]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、StackOverflowのトピックになります。 4年前に閉鎖されました。 この質問を改善する 今後および過去のイベントを表示するiPhone用のアプリケーションを構築しています。リストビューに落ち着きましたが、カレンダー(組み込みのカレンダーアプリケーションの「月」ビューに表示されるものと同じように)が最適であることに気付きました。 ただし、iPhoneのヒューマンインターフェイスガイドラインでは、カレンダーではなく日付ピッカーについて言及しているだけなので、すぐに使えるようなものはないと思います。本当?もしそうなら、誰かが使用できるサードパーティのコントロールを知っていますか?(自分で書くこともできますが、これは元のプロジェクト計画からの逸脱であるため、準備ができているものを手に入れたいと思います)。

9
iOSのテンキーキーボードに「完了」ボタンを追加する方法
そのため、テンキーキーボードにはデフォルトで[完了]または[次へ]ボタンが付属していないので、追加したいと思います。iOS 6以下では、キーボードにボタンを追加するためのいくつかのトリックがありましたが、iOS7では機能していないようです。 まず、通知を表示するキーボードをサブスクライブします [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; 次に、キーボードが表示されたらボタンを追加しようとします。 - (void)keyboardWillShow:(NSNotification *)note { // create custom button UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeSystem]; doneButton.frame = CGRectMake(0, 50, 106, 53); doneButton.adjustsImageWhenHighlighted = NO; [doneButton setTitle:@"Done" forState:UIControlStateNormal]; [doneButton addTarget:self action:@selector(dismissKeyboard) forControlEvents:UIControlEventTouchUpInside]; // locate keyboard view UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1]; …

2
InterfaceBuilderから作成されたフロント/バック要素にプログラムで送信します
インターフェイスビルダーでは、レイアウトオプションは、バックアップまたはフロントになどの任意の要素を送信するために送信することがあるUIButton、UIImage、UILabel等... さて、プログラムで実行時に同じことをしたいと思います。 それを行う簡単な方法はありますか? 別のビューを作成したくないので、z軸を更新するだけです。

4
AppDelegateインスタンス変数の参照
ナビゲーションベースのアプリケーションテンプレートに基づくプロジェクトがあります。AppDelegateには、メソッド-applicationDidFinishLoading:とがあり-applicationWillTerminate:ます。これらのメソッドでは、アプリケーションデータを読み込んで保存し、インスタンス変数(実際にはオブジェクトグラフ)に格納しています。 アプリケーションが読み込まれると、MainWindow.xibが読み込まれます。MainWindow.xibにはNavigationConrollerがあり、MainWindow.xibにはRootViewControllerがあります。RootViewControllernibNameプロパティは、RootView(実際のコントローラークラス)を指します。 私のクラスでは、-applicationDidFinishLoading:メソッドで作成したオブジェクトを参照して、そのオブジェクトへの参照を取得できるようにしたいと思います。 誰かがそれを行う方法を教えてもらえますか?プログラムで作成したオブジェクト間を参照する方法は知っていますが、中間の手順がNIBファイル内から行われたことを考えると、戻る方法を理解できないようです。

9
ユーザーが画面をつまんだときにUIImageオブジェクトをズームイン/ズームアウトするにはどうすればよいですか?
ユーザーがアプリケーションで標準のピンチアクションを実行したときに、UIImageオブジェクトをズームイン/ズームアウトしたいと思います。私は現在、UIImageViewを使用して画像を表示していますが、その詳細が何らかの形で役立つ場合は。 私はこれを行う方法を理解しようとしていますが、今のところそのような運はありません。 手がかりはありますか?

16
UINavigationControllerからビューをポップして、1回の操作で別のビューに置き換えるにはどうすればよいですか?
UINavigationControllerのスタックから1つのビューを削除して、別のビューに置き換える必要があるアプリケーションがあります。状況は、最初のビューが編集可能なアイテムを作成し、次にそれ自体をアイテムのエディターに置き換えることです。私が最初のビュー内で明白な解決策を実行するとき: MyEditViewController *mevc = [[MYEditViewController alloc] initWithGizmo: gizmo]; [self retain]; [self.navigationController popViewControllerAnimated: NO]; [self.navigationController pushViewController: mevc animated: YES]; [self release]; 私は非常に奇妙な行動をします。通常はエディタービューが表示されますが、ナビゲーションバーの[戻る]ボタンを使用しようとすると、余分な画面が表示され、一部が空白になり、一部が台無しになります。タイトルもランダムになります。ナビゲーションスタックが完全にホースで固定されているようなものです。 この問題へのより良いアプローチは何でしょうか? ありがとう、マット

10
iOS8でキーボードの高さの正しい値を取得できません
私はこのコードを使用して、キーボードのサイズを決定していました。 - (void)keyboardWillChange:(NSNotification *)notification { NSDictionary* keyboardInfo = [notification userInfo]; NSValue* keyboardFrameBegin = [keyboardInfo valueForKey:UIKeyboardFrameBeginUserInfoKey]; CGRect keyboardFrameBeginRect = [keyboardFrameBegin CGRectValue]; } 私はこれをシミュレーターで実行しています。 問題は、iOS 8以降、これでは正しい値が得られないことです。キーボードの提案が上にある場合、または下に押すと、異なる(正しくない)値が得られます。 キーボードの提案を含め、キーボードの正確なサイズを取得するにはどうすればよいですか?

11
現在のNSDateをタイムスタンプ形式で取得する
現在の時刻を取得して文字列に設定する基本的な方法があります。ただし、1970年以降のUNIXタイムスタンプ形式で現在の日付と時刻をフォーマットするにはどうすればよいですか? これが私のコードです: NSDate *currentTime = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"hh-mm"]; NSString *resultString = [dateFormatter stringFromDate: currentTime]; NSDateFormatter'resultString'をタイムスタンプに変更するために使用することは可能ですか?

7
iPhone / iPad:プログラムで画面幅を取得するにはどうすればよいですか?
こんにちは私はプログラムで幅を取得する方法があるかどうか疑問に思っています。 私はiphone3gs、iphone 4、ipadを収容するのに十分一般的なものを探しています。また、幅は、デバイスが縦向きか横向きか(ipadの場合)に基づいて変更する必要があります。 誰かがこれを行う方法を知っていますか?私はしばらく探していました...ありがとう!

8
2つのCGポイント間の距離を見つける方法は?
UIScrollViewで2本の指でマルチタッチを行うと、2つのCGポイントが得られます。それらの間の距離を見つけたい。次に、もう一度ピンチ(内側または外側)を行うと、再び2つのポイントが得られます。次に、これら2点間の距離を再度見つけた後、ピンチインしたかピンチアウトしたかを判断します。私がピンチインした場合、確かに新しい距離は短くなり、逆もまた同様です。 しかし、比較を行うために2点間の距離の正確な測定値を見つける方法がわかりませんか?誰かがこれについて考えを持っていますか?


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.