タグ付けされた質問 「ios」

iOSは、Apple iPhone、iPod touch、iPadで実行されるモバイルオペレーティングシステムです。iOSプラットフォームでのプログラミングに関する質問には、このタグ[ios]を使用してください。これらのプログラミング言語に固有の問題には、関連タグ[objective-c]および[swift]を使用してください。

30
Xcode 12、iOSシミュレータ用に構築されていますが、アーキテクチャarm64用にiOS用に構築されたオブジェクトファイルにリンクしています
iOS 14の準備のためにXcode12(ベータ5)で大規模な(そしてXcode 11で作業中の)プロジェクトを構築しようとしています。コードベースは以前はObj-Cでしたが、現在はObj-CとSwiftの両方が含まれており、次のポッドを使用しています。 Obj-Cおよび/またはSwiftも同様です。 Xcode 12をサポートするココアポッドの新しいベータ版(現在は1.10.0.beta 2)をプルしました。 ポッドのインストールは成功しました。ビルドを実行すると、ポッドフレームワークで次のエラーが発生します。 「iOSシミュレータ用にビルドしていますが、アーキテクチャarm64用にiOS用にビルドされたオブジェクトファイルにリンクしています」 フレームワークでlipo-infoを実行すると、armv7s armv7 i386 x86_64arm64になります。 以前は、プロジェクトの有効なアーキテクチャはarmv7、armv7s、arm64に設定されていました。 Xcode 12では、Appleのドキュメントに従って、その設定はなくなります。アーキテクチャは$(ARCHS_STANDARD)に設定されています。除外されたアーキテクチャには何も設定されていません。 誰かがここで何が起こっているのか考えていますか?これをもっと単純なプロジェクトで再現することはまだできていません。

6
SwiftからiOSでUUIDを生成する
私のiOS Swiftアプリで、テーブルキーとして使用するランダムなUUID(GUID)文字列を生成したいのですが、次のスニペットが機能しているようです: let uuid = CFUUIDCreateString(nil, CFUUIDCreate(nil)) これは安全ですか? または、おそらくより良い(推奨される)アプローチはありますか?

30
-didSelectRowAtIndexPath:呼び出されていません
タブビュー内にテーブルビューがあるiOSアプリを書いています。私UITableViewControllerはで実装しましたが-tableView:didSelectRowAtIndexPath:、実行時に行を選択すると、メソッドが呼び出されません。ただし、テーブルビューにデータが入力されているため、コントローラーの他のtableViewメソッドが呼び出されていることがわかります。 これを実現するために私が台無しにしたかもしれないアイデアは誰にもありますか?

16
Swift-エンコードURL
このような文字列をエンコードすると: var escapedString = originalString.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding) スラッシュをエスケープしません/。 私はこのObjective Cコードを検索して見つけました: NSString *encodedString = (NSString *)CFURLCreateStringByAddingPercentEscapes( NULL, (CFStringRef)unencodedString, NULL, (CFStringRef)@"!*'();:@&=+$,/?%#[]", kCFStringEncodingUTF8 ); URLをエンコードする簡単な方法はありますか?それ以外の場合、Swiftでこれをどのように記述できますか?
295 ios  swift  urlencode 

24
iOS 13でダークモードをオプトアウトすることはできますか?
私のアプリの大部分は、ネイティブ実装ではまだ利用できない機能を提供するWebビューで構成されています。Webチームは、Webサイトにダークテーマを実装する予定はありません。そのため、私のアプリは、iOS 13のダークモードをサポートすることで少し半分に見えます。 ダークモードのサポートをオプトアウトして、アプリが常にライトモードを表示してWebサイトのテーマに一致するようにすることはできますか?
295 ios  ios13  ios-darkmode 

7
iOS13.2でWKWebViewをロードすると、コンソール警告[Process] kill()が予期しないエラー1を返したのはなぜですか?
iOS 13.2ベータをインストールしてから、デバッグコンソールのエラーメッセージが表示されます。ストーリーボードにWKWebViewオブジェクトを含むViewControllerをロードするたびに発生します。 次に、Webビューが表示されている間、次のメッセージが継続的に表示されます... 2019-10-10 12:10:47.867830+0200 (...) [Process] kill() returned unexpected error 1 2019-10-10 12:10:47.908698+0200 (...) [Process] kill() returned unexpected error 1 2019-10-10 12:10:47.908814+0200 (...) [Process] kill() returned unexpected error 1 2019-10-10 12:10:47.934169+0200 (...) [Process] kill() returned unexpected error 1 2019-10-10 12:10:47.947668+0200 (...) [Process] kill() returned unexpected error 1 2019-10-10 12:10:47.964375+0200 …

15
色合いUIButtonイメージ
白または黒UIImageをそこに配置するUISegmentedControlと、セグメント化されたコントロールの色合いに一致するように、自動的にカラーマスクされます。これは本当にかっこいいと思ったので、他の場所でもこれができるかと思いました。たとえば、私はボタンがたくさんあるのに、形は統一されていますが、色はさまざまです。各ボタンにPNGを作成する代わりに、このカラーマスキングを使用してすべてのボタンに同じ画像を使用できますが、色合いの色または何かを設定して実際の色を変更できますか?

8
iPhoneコアデータをWebサーバーと同期し、他のデバイスにプッシュする方法 [閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 2年前休業。 この質問を改善する 私は、iPhoneアプリケーションに格納されているコアデータをiPadやMacなどの複数のデバイス間で同期する方法に取り組んでいます。iOSのCore Dataで使用する同期フレームワークは(もしあれば)多くはありません。しかし、私は次の概念について考えていました。 ローカルコアデータストアが変更され、変更が保存されます。(a)デバイスがオンラインの場合、変更セットを送信したデバイスのデバイスIDを含め、変更セットをサーバーに送信しようとします。(b)チェンジセットがサーバーに到達しない場合、またはデバイスがオンラインでない場合、アプリは変更セットをキューに追加して、オンラインになったときに送信します。 クラウド内にあるサーバーは、受信した特定の変更セットをマスターデータベースとマージします。 変更セット(または変更セットのキュー)がクラウドサーバーにマージされると、サーバーは、なんらかのポーリングシステムを使用して、サーバーに登録されている他のデバイスにすべての変更セットをプッシュします。(私はAppleのPushサービスを使用することを考えましたが、コメントによると、これは実行可能なシステムではないようです。) 私が考えなければならない空想はありますか?ObjectiveResource、Core Resource、RestfulCoreDataなどのRESTフレームワークを見てきました。もちろん、これらはすべてRuby on Railsで動作しますが、私はこれに縛られていませんが、それは出発点です。私のソリューションに対する主な要件は次のとおりです。 メインスレッドを一時停止せずに、変更をバックグラウンドで送信する必要があります。 使用する帯域幅はできるだけ少なくする必要があります。 私はいくつかの課題について考えました: さまざまなデバイス上のさまざまなデータストアのオブジェクトIDがサーバーに接続されていることを確認します。つまり、データベースに格納されているオブジェクトへの参照を介して関連付けられているオブジェクトIDとデバイスIDのテーブルがあります。レコード(DatabaseId [このテーブルに対して一意]、ObjectId [データベース全体のアイテムに対して一意]、Datafield1、Datafield2)を作成し、ObjectIdフィールドは別のテーブルAllObjects:(ObjectId、DeviceId、DeviceObjectId)を参照します。次に、デバイスが変更セットをプッシュすると、ローカルデータストア内のコアデータオブジェクトからデバイスIDとオブジェクトIDが渡されます。次に、クラウドサーバーはAllObjectsテーブルのobjectIdおよびdevice Idをチェックし、変更するレコードを初期テーブルで見つけます。 すべての変更にはタイムスタンプを付けて、マージできるようにする必要があります。 デバイスは、バッテリーを使いすぎずにサーバーをポーリングする必要があります。 ローカルデバイスは、サーバーから変更を受け取った場合、またはそのときに、メモリに保持されているものを更新する必要もあります。 他にここで見逃しているものはありますか?これを可能にするには、どのようなフレームワークに注目すべきですか?

23
XibファイルからカスタムUITableViewCellsをどのようにロードしますか?
質問は簡単です:UITableViewCellXibファイルからカスタムをどのようにロードしますか?これにより、Interface Builderを使用してセルを設計できます。メモリ管理の問題により、答えは明らかに単純ではありません。このスレッドは問題に言及し、解決策を提案しますが、NDAのリリース前であり、コードが不足しています。決定的な答えを提供せずに問題を議論する長いスレッドがあります。 ここに私が使用したいくつかのコードがあります: static NSString *CellIdentifier = @"MyCellIdentifier"; MyCell *cell = (MyCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { NSArray *nib = [[NSBundle mainBundle] loadNibNamed:CellIdentifier owner:self options:nil]; cell = (MyCell *)[nib objectAtIndex:0]; } このコードを使用するには、の新しいサブクラスであるMyCell.m / .hを作成し、必要なコンポーネントをUITableViewCell追加IBOutletsします。次に、新しい「空のXIB」ファイルを作成します。IBでXibファイルを開き、UITableViewCellオブジェクトを追加し、その識別子を「MyCellIdentifier」に設定し、そのクラスをMyCellに設定してコンポーネントを追加します。最後に、IBOutletsをコンポーネントに接続します。IBでファイルの所有者を設定していないことに注意してください。 他のメソッドは、ファイルの所有者の設定を推奨し、追加のファクトリクラスを介してXibがロードされない場合にメモリリークを警告します。上記のInstruments / Leaksでテストしたところ、メモリリークはありませんでした。 では、Xibからセルをロードする標準的な方法は何ですか?ファイルの所有者を設定しますか?工場は必要ですか?もしそうなら、ファクトリーのコードはどのように見えますか?複数のソリューションがある場合は、それぞれの長所と短所を明確にしましょう...

13
Xcode Derived dataフォルダの内容を安全に削除できますか?
ディスク領域が少なくなり、サードパーティのユーティリティを使用して、〜/ Library / Developer / Xcode / DerivedDataディレクトリが約22GBのディスク領域を使用していることを確認しました。 私はstackoverflowを検索し、この投稿を見つけました 〜/ Library / Developer / Xcode / DerivedDataディレクトリから安全に削除するにはどうすればよいですか? この質問への受け入れられた回答は、私がこのディレクトリからフォルダに触れたり、フォルダを削除したりしないことを示唆しています。だから私がしたことは Appstoreで入手できるアプリの既存のビルドプロジェクトフォルダーを見つけました 派生ディレクトリからフォルダを削除しました XCode 5をリリース そのプロジェクトを開く クリーンビルド シミュレータでテストしてコンパイルしました 再アーカイブ すべてがうまくいった。何も壊れていませんでした。 その投稿の回答で何かを見逃していない限り、経験豊富な開発者に、DerivedDataからすべてのフォルダーを削除しても、プロジェクトのビルド、テスト、およびコンパイルに支障がないことを確認してください。
293 ios  xcode 



30
EXC_BAD_ACCESSシグナルを受信しました
アプリケーションをデバイスにデプロイすると、プログラムは数サイクル後に次のエラーで終了します。 Program received signal: "EXC_BAD_ACCESS". プログラムはiPhoneシミュレーターで問題なく実行されます。また、命令を1つずつ実行する限り、デバッグして実行されます。もう一度走らせたらすぐにEXC_BAD_ACCESS信号を打ちます。 この特定のケースでは、それは偶然にも加速度計コードのエラーでした。シミュレーター内では実行されないため、エラーはスローされませんでした。ただし、デバイスに展開されると実行されます。 この質問に対する回答のほとんどは一般的なEXC_BAD_ACCESSエラーを扱っているため、恐ろしい不正アクセスエラーのキャッチオールとしてこれを開いたままにしておきます。 EXC_BAD_ACCESS通常、不正なメモリアクセスの結果としてスローされます。詳細については、以下の回答をご覧ください。 EXC_BAD_ACCESS以前に信号に遭遇したことがありますか?どのように対処しましたか?
290 ios  cocoa-touch 

13
ストーリーボードログイン画面のベストプラクティス、ログアウト時のデータの消去の処理
Storyboardを使用してiOSアプリを構築しています。ルートビューコントローラーはタブバーコントローラーです。ログイン/ログアウトプロセスを作成していますが、ほとんど問題なく機能していますが、いくつか問題があります。これらすべてをセットアップする最良の方法を知る必要があります。 以下を達成したい: アプリを初めて起動したときにログイン画面を表示します。ログインしたら、Tab Bar Controllerの最初のタブに移動します。 その後アプリを起動するたびに、ログインしているかどうかを確認し、ルートタブバーコントローラーの最初のタブに直接スキップします。 手動でログアウトボタンをクリックすると、ログイン画面が表示され、View Controllerからすべてのデータが消去されます。 これまでに行ったことは、ルートビューコントローラーをタブバーコントローラーに設定し、ログインビューコントローラーにカスタムセグエを作成することです。タブバーコントローラークラス内で、viewDidAppearメソッド内にログインしているかどうかを確認し、セグエを実行します。[self performSegueWithIdentifier:@"pushLogin" sender:self]; また、ログアウトアクションを実行する必要がある場合の通知を設定します。 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(logoutAccount) name:@"logoutAccount" object:nil]; ログアウト時に、キーチェーンから資格情報を消去し[self setSelectedIndex:0]、セグエを実行して、ログインビューコントローラーを再度表示します。 これはすべて正常に動作しますが、このロジックはAppDelegateにある必要がありますか?また、2つの問題があります。 彼らが初めてアプリを起動したとき、セグエが実行される前に、Tab Bar Controllerが短時間表示されます。私はコードをに移動しようとしましたviewWillAppearが、セグエはそれほど早く機能しません。 ログアウトしても、すべてのデータはすべてのView Controller内にあります。ユーザーが新しいアカウントにログインすると、更新するまで古いアカウントデータが表示されます。ログアウト時に簡単にこれをクリアする方法が必要です。 私はこれをやり直すことにオープンです。ログイン画面をルートビューコントローラーにするか、AppDelegateでナビゲーションコントローラーを作成してすべてを処理することを検討しました...この時点で最良の方法がわからないだけです。

24
UIToolbarに左矢印ボタン(UINavigationBarの「戻る」スタイルなど)を作成する
に「戻る」左矢印ベゼルボタンを作成したいですUIToolbar。 私が知る限り、これらのいずれかを取得する唯一の方法はUINavigationController、デフォルト設定のままにして、左側のバー項目に1つ使用することです。しかしUIBarButtonItem、それをとして作成する方法を見つけることができないためUIToolbar、と非常に似ていても、標準で作成することはできませんUINavigationBar。 ボタン画像を使用して手動で作成することはできましたが、ソース画像がどこにも見つかりません。アルファチャネルエッジを持っているため、スクリーンショットや切り取りでは、多目的な結果は得られません。 私が使用するすべてのサイズと配色のスクリーンショットを超えるアイデアはありますか? 更新:質問を避けて、私はこれを尋ねるべきではなく、使用するべきであることを示唆するのをやめてくださいUINavigationBar。私のアプリはInstapaper Proです。(スペースを節約し、読み取り可能なコンテンツ領域を最大化するために)下部のツールバーのみが表示され、左矢印の戻るボタンを下部に配置したいと思います。 これを行う必要はないということは答えではなく、確かに賞金に値しません。

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