タグ付けされた質問 「objective-c」

このタグは、Objective-C機能に関する質問または言語のコードに依存する質問でのみ使用する必要があります。タグ[cocoa]および[cocoa-touch]は、Appleのフレームワークまたはクラスについて質問するために使用する必要があります。これらのプラットフォームに固有の問題には、関連タグ[ios]、[macos]、[apple-watch]、および[tvos]を使用します。

24
タイトル変更時に不要なUIButtonアニメーションを停止する方法は?
iOS 7では、UIButtonのタイトルが間違った時間にアニメーション化され、遅くなります。この問題はiOS 6では発生しません。以下を使用しています。 [self setTitle:text forState:UIControlStateNormal]; 私はこれが瞬時に、空白のフレームなしで行われることを望みます。この瞬きは特に注意をそらし、他のアニメーションから注意をそらします。


15
registerForRemoteNotificationTypes:iOS 8.0以降ではサポートされていません
iOS 8.xでプッシュ通知に登録しようとすると: application.registerForRemoteNotificationTypes(UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound) 次のエラーが発生します。 registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later. それを行うための新しい方法は何ですか?iOS 7.xでこのSwiftアプリを実行すると機能します。 編集 iOS 7.xでは、取得した条件付きコード(SystemVersion条件付きまたは#if __IPHONE_OS_VERSION_MAX_ALLOWED> = 80000)を含めると dyld: Symbol not found: _OBJC_CLASS_$_UIUserNotificationSettings

24
UIImageのトリミング
画像の中心のスケーリングされたチャンクを取得できるように、画像のサイズを変更するコードをいくつか持っています-これを使用して、画像UIImageの小さな正方形の表現を取得し、写真アプリ。(私UIImageViewは同じ結果を達成するためにa を使用してトリミングモードを調整できることを知っていますが、これらの画像は時々に表示されますUIWebViews)。 このコードのいくつかのクラッシュに気づき始めて、少し困惑しています。私は2つの異なる理論を持っているので、どちらがベースにあるのか疑問に思っています。 理論1)ターゲットサイズのオフスクリーンイメージコンテキストに描画することでトリミングを実現します。画像の中央部分が必要なので、CGRect渡された引数drawInRectを、画像コンテキストの境界よりも大きいものに設定します。私はこれがコーシャであることを望んでいたが、代わりに私が触れてはならない他の記憶を上書きしようとしているのだろうか? 理論2)私は、これらすべてをバックグラウンドスレッドで実行しています。メインスレッドに制限されているUIKitの部分があることを知っています。オフスクリーンビューへの描画がこれらの1つではないことを想定していたのです。私が間違っている? (ああ、どうやってNSImage's drawInRect:fromRect:operation:fraction:メソッドを逃したか。)

7
UIVisualEffectViewを使用して画像をぼかす方法
誰かが画像にぼかしを適用する小さな例を挙げられますか?私はしばらくの間コードを理解しようと試みてきました:( obj cでまだ新しいです! UIVisualEffectView複雑な視覚効果以上の単純な抽象化を提供します。結果は、目的の効果に応じて、ビューの背後に階層化されたコンテンツ、またはビューのcontentViewに追加されたコンテンツに影響を与える可能性があります。 UIVisualEffectView既存のビューにを適用して、既存のビューにぼかしまたは鮮やかな効果を適用します。UIVisualEffectViewをビュー階層に追加した後、サブビューをのcontentViewに追加しますUIVisualEffectView。サブビューを直接UIVisualEffectViewそれ自体に追加しないでください。 https://developer.apple.com/documentation/uikit/uivisualeffectview#//apple_ref/occ/instp/UIVisualEffectView/contentView

1
カスタムの割り当て解除とARC(Objective-C)
私の小さなiPadアプリには、オブザーバーを使用する「言語切り替え」機能があります。すべてのView Controllerは、その実行中に自分自身をオブザーバーに登録しviewDidLoad:ます。 - (void)viewDidLoad { [super viewDidLoad]; [observer registerObject:self]; } ユーザーが[言語を変更]ボタンを押すと、新しい言語がモデルに保存され、オブザーバーに通知さupdateUi:れ、登録されたオブジェクトのセレクターを呼び出します。 これは、TabBarControllerにビューコントローラーがある場合を除いて、非常にうまく機能します。これは、タブバーが読み込まviewDidLoad:れると、ビューを初期化せずに子コントローラーからタブアイコンをフェッチするため、呼び出されないため、これらのビューコントローラーは言語変更通知を受信しないためです。このため、registerObject:呼び出しをinitメソッドに移動しました。 以前viewDidLoad:はオブザーバーに登録していたとき、以前viewDidUnload:は登録解除していました。現在で登録しているのでinit、で登録を解除することは非常に理にかなっていdeallocます。 しかし、これが私の問題です。私が書くとき: - (void) dealloc { [observer unregisterObject:self]; [super dealloc]; } 私はこのエラーを受け取ります: ARCは「dealloc」の明示的なメッセージ送信を禁止します [super dealloc]スーパークラスが適切にクリーンアップされるように呼び出す必要があるので、ARCはそれを禁止しているので、今は行き詰まっています。オブジェクトが死んでいるときに通知を受ける別の方法はありますか?

11
NSUserDefaults-キーが存在するかどうかを確認する方法
私は小さなiPhoneアプリで作業してNSUserDefaultsおり、データの永続化として使用しています。名前や番号など、いくつかのことを追跡するだけでよいので、単純にしておくとよいでしょう。 参照用にこのページを見つけましたが、私の質問には答えられないと思います。基本的に、値(またはキー)が既にに存在するかどうかを確認しNSUserDefaults、それに応じて何かを実行できるようにしたいと考えています。 いくつかの例:アプリが起動します。初めて起動する場合は、「ようこそ」という警告が出力されます。これが初めて開いたかどうかを知るために、UserDefaultsを読み取ってチェックします。 例2:「Hello [Name]」と表示されます。ここで、Nameは入力したものです。アプリを開いたときに名前がない場合は、「Hello World」と表示されます。名前をすでに入力しているかどうかを確認し、それに応じて行動する必要があります。名前はに保存されNSUserDefaultsます。 ここで助けますか?本当にありがたいです!


7
このブロックで自己を強くキャプチャすると、保持サイクルにつながる可能性があります
xcodeでこの警告を回避するにはどうすればよいですか。これがコードスニペットです。 [player(AVPlayer object) addPeriodicTimeObserverForInterval:CMTimeMakeWithSeconds(0.1, 100) queue:nil usingBlock:^(CMTime time) { current+=1; if(current==60) { min+=(current/60); current = 0; } [timerDisp(UILabel) setText:[NSString stringWithFormat:@"%02d:%02d",min,current]];///warning occurs in this line }];

14
iOSアプリケーションでn分ごとにバックグラウンドで位置情報を更新するにはどうすればよいですか?
iOSアプリケーションでバックグラウンドで位置情報をn分ごとに更新する方法を探しています。私はiOS 4.3を使用していますが、このソリューションはジェイルブレイクされていないiPhoneでも機能するはずです。 私は次のオプションを試しました/検討しました: CLLocationManager startUpdatingLocation/startMonitoringSignificantLocationChanges:これは、構成されたプロパティに基づいて、期待どおりにバックグラウンドで機能しますが、n分ごとに場所を強制的に更新することはできないようです NSTimer:アプリがフォアグラウンドで実行されているときに機能しますが、バックグラウンドタスク用に設計されていないようです ローカル通知:ローカル通知はn分ごとにスケジュールできますが、現在の場所を取得するためにコードを実行することはできません(ユーザーが通知を介してアプリを起動する必要がない場合)。これは通知を使用する必要がある方法ではないため、この方法もクリーンな方法ではないようです。 UIApplication:beginBackgroundTaskWithExpirationHandler:私が理解している限り、これは、「長時間」バックグラウンドプロセスを実装するのではなく、アプリがバックグラウンドに移動したときに、バックグラウンド(時間も限られています)で一部の作業を完了するために使用する必要があります。 これらの定期的なバックグラウンドの場所の更新を実装するにはどうすればよいですか?

25
Swiftで戻るボタンのテキストを設定する方法
戻るボタンのテキストを削除するにはどうすればよいですか。 現在の戻るボタン: <戻る 必要な戻るボタン: <その他 これらのどれもうまくいきませんでした: self.navigationItem.backBarButtonItem?.title = "Back" self.backItem?.title = "" self.navigationController?.navigationBar.backItem?.title = "" self.navigationItem.backBarButtonItem?.title = "" self.navigationController?.navigationItem.backBarButtonItem?.title="Back" self.navigationController?.navigationBar.backItem?.title = "" self.navigationController?.navigationItem.backBarButtonItem?.title
207 ios  objective-c  swift 

30
Xcode 4が「(アプリ名)への接続」でハングする
Xcode 4にアップグレードしたところ、何らかの理由でアプリがシミュレーターやiOSデバイスで実行できません。Xcode 3では完全に機能していましたが、突然、プログラムを実行すると、「Attaching to ...」でプログラムが停止します。この問題を解決するための他の情報もないようです。 要約すると、問題に取り組むために次のことを試すことができます: シミュレータを再起動します。 ビルドフェーズ->バンドルリソースのコピーにInfo.plistファイルが含まれていないことを確認してください。 フォルダー参照としてプロジェクトに追加されたリソースフォルダー(青いフォルダーアイコン)。フォルダをグループとして追加した後、問題は解消しました。

6
新しい自動参照カウントメカニズムはどのように機能しますか?
誰かがARCのしくみを簡単に説明できますか?ガベージコレクションとは違うことは知っていますが、どういう仕組みになっているのか正確に疑問に思っていました。 また、ARCがパフォーマンスを妨げることなくGCを実行する場合、JavaはなぜGCを使用するのでしょうか。なぜARCも使用しないのですか?


20
Swiftコンパイラエラー:「フレームワークモジュール内の非モジュールヘッダー」
次に、ObjCフレームワークをSwiftに移行したいと思います。次のエラーが発生しました。 include of non-modular header inside framework module 'SOGraphDB' 参照は、プロトコルを定義するだけのヘッダーファイルであり、このヘッダーファイルをいくつかのクラスで使用して、このプロトコルを使用しています。 モジュール機能に関連しているようですが、現時点では修正方法がはっきりしていません。解決策を知っていますか? 更新: これはSwiftコンパイラエラーです。 更新2: 迅速な修正(根本的な原因を解決しない)は、次の設定をyesに設定することです:CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES

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