Xcodeで開発する際に知っておくと便利かつ「こんな機能あったんだ!」と、思うようなショートカットもまとめました。 使いこなしていければ、「へー、そんな機能あったんですか!」等言われたり、開発効率も上がりオススメです。 ナビゲータエリア ショートカット 機能
環境 Xcode Version 12.1 Apple Swift version 5.3 課題 開発をしていると、こんな感じでメンバ変数がたっぷりあるclassができます。この例ではclassですが、structも同様ですね。 class SampleClass: Codable { public let id: Int public let title: String public let body: String public let thumbnailUrl: URL public let tags: [String] public let categories: [String] public let createdAt: Date public let updatedAt: Date public let comment: [String] public let isFavor
MacやiPhone向けのアプリケーションを開発するための総合開発環境であるXcodeで作成されたプロジェクトを対象としたマルウェアの存在が明らかになっています。 XCSSET Mac Malware: Infects Xcode Projects, Performs UXSS Attack on Safari, Other Browsers, Leverages Zero-day Exploits - TrendLabs Security Intelligence Blog https://blog.trendmicro.com/trendlabs-security-intelligence/xcsset-mac-malware-infects-xcode-projects-performs-uxss-attack-on-safari-other-browsers-leverages-z
概要 UIButtonの画像をどうしても右寄せしたくて色々と調べたことについてのまとめです。 実装方法 画像の上にUIButtonを配置する 以下の図のように、画像の上にボタンを配置すればデザインの簡単に実装はできます。 しかし、この実装方法だとボタンを押したときに画像がハイライトされません。 ハイライトさせるには以下の処理を追加する必要があります。 ハイライト用の画像を設定 ボタンのアクションに合わせて画像のハイライト状態を変更 @IBOutlet private weak var searchButtonImageView: UIImageView! @IBAction private func searchButtonTouchCancel() { searchButtonImageView.isHighlighted = false } @IBAction private func
iOS開発者の皆さん、毎日、ハッピーな開発ライフ過ごしてますでしょうか。 楽しい開発には快適な開発環境は欠かせませんが、もちろんiOS開発者の皆さんが使うのはXcodeですよね。 いや、俺はAppCodeという人はそっとタブを閉じましょう。 JetBrains製品、良いですよね。Android Studio も素晴らしい。どんな言語でも同じ様な操作感で。でもちょっともっさりしてるんだよな。 その点、Xcodeは動きはキビキビしていて玄人プログラマー好み。 でも一つ、すごく嫌なところがありました。これさえ直してくれれば最高なのに。 普通、Xcodeって編集する時、複数のタブ開くじゃないですか。自分の場合はこんな感じ。 Storyboardと関連のソースファイルを幾つか。そして、デバッグする時は、気になってるところにブレークポイント張ります。 プログラム実行して、さて、気になるところに差し掛か
こんにちは。メルペイのiOSチームの@kenmazです。 メルペイのiOSチームでは Xcode11 で導入された Xcode Previews 機能を用いて、UIKitベースのプロジェクトの開発効率向上に取り組んでいます。Xcode PreviewsといえばSwiftUI用の開発支援機能、というイメージがありますが、実は従来のUIKitベースのプロジェクトに対しても使用が可能です。 Xcode Previews を使うことでiOS Simualtor等を起動することなく、様々な状態のビューをリアルタイムにプレビューできるため、開発効率が大幅に向上します。 またXcode Previewsが提供する強力なプレビュー機能を使うことで、Interface Builderの支援も不要となったため、従来のxib/Storyboardを用いたビューの実装から、コードによるビューの実装への移行を試みる
カスタムTableViewCellを作るときにはだいたいこうやってます-プロトタイプで作るか、xibで作るかiOSSwifttableViewcellTableViewController きっかけ 仕事で他の人のソースをみることはよくありますが、最近UITableViewでセルの再利用をしていないソースを3回みました。 え?まじ??いいの???私老人会なのかしらって思いました。 iPhoneもだいぶハードが進化していろんなむちゃぶりされても動くようにはなってきたのですが、ちゃんとかいたほうがぬるぬる綺麗にうごくんじゃない?って思うんです。それで、まとめることにしました。 そういえば、cellForRowAtでcellの中身を全部removefromSuperviewしてから、addSubviewするというコードも1年ぐらい前に見たことがあります。 xib絶対使わない派の人もいるとは思いま
環境 実装(16'11/20追記分) 実装 余談 環境 Mac OS: 10.12.1 Xcode: 8.1 swift: 3.0.1 【Swift1系】【Swift2系】Swiftで開発している人必見!ターミナルでSwiftのバージョンを確認する方法 実装(16'11/20追記分) ShinokiRyoseiさんから Navigation Controllerの使用を薦めて頂いたので、 その手順もまとめます。(ありがとうございますm(_ _)m) 完成図 こちらが手順のgif ViewControllerを選択 Editor > Embed in > Navigation Controller Navigation Controllerが作られる ViewControllerをドラッグし、作る Bar Button Itemを1つ目のViewに追加 Attributes Inspecto
タイトルの通りなのですが、Xcode10からついにマルチカーソル機能が使用できるようになりました。 今までも ⌘+Control+E (Use Selection for Replace) でマルチカーソルもどきは使用できたのですが、本格的なマルチカーソルは今回が初です コマンド Select Column Up(Down) Shift+Control+↑ Shift+Control+↓ (ダブルクォーテーションの補完が1行目のほうしかできてない😅) 上または下の行にカーソルを複製する。 このコマンドだけ唯一デフォルトでショートカットキーが設定されています。他のに関してはデフォルトだと設定されてないので自分で設定しないといけません。 Select All Symbols 同じシンボルをすべて選択してカーソルを割り当てる。 これによる選択はただ文字列が一致しているかを見ているのではなく、コ
みんな思ってるだろうけどなぜか話題に全くならないXcodeの謎の動きがあります。 タブ操作についてです。 タブで開く場合、意識しながら開いて行かないといつの間にか全タブ同じファイルになっていることがよくあります。 Project Navigator(以下ナビゲーターエリア)で選択されたソースはアクティブなタブに反映されます。 そのためいくつかのタブを開いている時に意識せずに作業していると いつのまにか全タブがソースBとなってて「あれ?ソースAのタブが消えた」となってしまいます。 原因はナビゲーターエリアにてシングルクリックするだけでアクティブタブに表示されるためこのようなことが起こってしまいます。 シングルクリックをOFFにすればいい話なんですがそんな設定がないのです。 どうしようかといろいろ調べていると「シングルクリックをせずにダブルクリックをすれば回避できる」と某掲示板で言ってたので試
「ショートカットを制するものは開発を制す」だそうです。 一つ一つは微々たる時間の節約でも毎日何度も使うと、膨大な時間が節約出来ることを 考えると、そうかもと思います。 今回は個人的に使う頻度順にまとめてみました。13inchのMBAで開発をしており、作業スペースが狭いと感じることが多いので、それを広げるショートカットが多めです。 こんなのも良く使うというご指摘あれば追加致しますので宜しくお願い致します。 その他間違いのご指摘、ご意見等頂けますと幸いです。 ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ Cmd + R ビルドしてラン Cmd + . ストップ。ランの状態の終了。 シュミレーターで起動しているアプリを落としたい時によく使います。 Cmd + Q シュミレーターの終了 シュミレータは起動するのに、アプリは立ち上がらない・立ち上がりが異様に遅いことって多くないですか?そんな時は終
悪夢の "Could not insert new outlet connection" ストーリーボードなどで View を配置して、コード側と関連付けようとするとたまに遭遇するこのエラーメッセージ、ググッてみても完璧な解決策が見つかりません。 だいたい Derived Data を削除 Xcode を再起動 プロジェクトをクリーン するとうまくいくようになる、という書き込みを見かけます。ですが試してみてもうまくいったりいかなかったり。 手動で接続先となる変数(Outlet)を書いて、その変数と繋げるとうまくいくっぽい そこで思いついてやってみたらうまくいったぽい解決策がこちら。 1. 接続先となる変数を先に定義する まず手動で変数を用意します。
Xcodeは使用していると開発速度向上を目的としたキャッシュデータを大量に蓄積していきます。開発をしているとそのようなデータを消したくなる時があります。 Xcodeは〜/ Developerフォルダにキャッシュファイルやシンボルを格納していきます。 ディレクトリの場所は決まっているので手動かスクリプトで削除することが多いと思います。今日iOSやFlutterの情報を発信しておられる@_monoさんがそのような内部データをGUIで削除できるアプリケーションを紹介しておられました。 素晴らしいツールを手に入れた( ´・‿・`) > There’s a great tool called DevCleaner which will easily delete up to 20GB of unused data for you. This is how it looked for me after
まえがき 「ビルド待ちすぎて頭おかしくなりそう」 そうやって消耗されてませんか?自分もそうでした。 でも巷にはXcodeでのビルド時間を削減・短縮する様々な方法がシェアされております。 そこで、実際に自分が開発しているProjectに対してそれらの方法をちゃんと適用して、どの程度効果があったかを実測値とともに記しておければと思い執筆しました。 ビルド時間が長くて作業に集中できないよっていう方 よく何%削減とかいうけれど本当に実測値でみても効果あるの?と疑問を抱いている方 の参考になれば幸いです。 本記事でも、改善方法についての解説は行なっておりますが、先人様方の記事の方がより詳細に記されているため、そちらも合わせてご参考にしていただければと思います。同時に、今回の効果測定でも下記記事は大変参考になりました。ありがとうございます @you_matz さん: Xcode8でビルドが遅すぎるのを
Swift実践入門 ~ 今からはじめるiOSアプリ開発! 基本文法を押さえて、簡単な電卓を作ってみよう 初めてSwiftを触るエンジニアの方向けに、Swiftの基本から、実際に動くiOSアプリ開発までを解説します。実際に手を動かして覚える内容となっているので、Xcodeを操作しながら読み進んでください。 はじめまして、山野貴史と申します。Webアプリケーション開発やiOSアプリの制作等を行っています。 好物はRubyと、Rails。RailsAmpという、AMP(Accelerated Mobile Pages) に対応するRuby on Railsのプラグインgemを作りました。エディタはVim派です。Swiftも大好きです。 本稿では、初めてSwiftを触るエンジニアの方向けに、Swiftの基本から、実際に動くiOSアプリ開発までを解説します。Swiftを対話的に動作させて慣れた後、簡
今回はAutoLayoutでうまく行かなかった時のデバッグ法のうち、ログを解読して頑張る方法と、Document Outline Controlを使う方法、SymbolicBreakpointを使う方法について書こうと思います。「AutoLayoutのデバッグする(2)」ではrecursiveDescriptionなどObjective-Cのプライベートメソッドを用いて怪しいレイアウトを見つける方法、「AutoLayoutのデバッグする(3)」ではViewデバッガーなど視覚的に見て解決する方法について(いつか)書く予定です。 明らかにしたいこと 下記のエラーが出ているので何がダメなのかを知りたい [LayoutConstraints] Unable to simultaneously satisfy constraints. Probably at least one of the con
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く