タグ

storyboardに関するnabeatsu1のブックマーク (7)

  • Auto Layoutの静的な制約で実現するカラム幅が可変のテーブル - 24/7 twenty-four seven

    次に示すような見出しと各カラムが右寄せ、ラベルの文字数によってカラムの幅が伸縮し、広くなった場合は隣の列を押し出し、短くなった場合は少なくとも見出しの幅に収まり、各列の間には一定のマージンを置くというテーブルレイアウトを、静的なAuto Layoutの制約だけで作ることを考えます。 このような、UIコンポーネントが持つコンテンツの大きさによって隣接するコンポーネントを押し出すような場面ではAuto Layoutがとても効果的に働きます。 Auto Layoutなしで実現しようとすると、列ごとの各行の文字幅を計算し、最大の幅に合わせて再配置する、という処理をコンテンツが変わるたびに行うということになりますが、Auto Layoutの制約を使用する場合ではそもそもレイアウトの再計算を自分でやる必要はないので、コンテンツの変わったタイミングなどを気にする必要はありません。 ただデータを再代入する

    Auto Layoutの静的な制約で実現するカラム幅が可変のテーブル - 24/7 twenty-four seven
  • Segueを使わずにかっこよく画面遷移する方法を考えた - hiragram no blog

    最近Segueをいかに安全に使って画面遷移するかということを考えていたけど、#swtwsを見ていてそもそもSegueを使わない/嫌いという人が結構いるんだなと思ったのでSegueを使わないで楽に安全に画面遷移する方法を考えてみたら意外といい感じになった。 Segueの危うい所 コード内ではSegueのidentifierを単なる文字列として扱う所 performSegue(withIdentifier: "toDetailVC", sender: nil) だからSegueの名前が変わった時に直し忘れていてもコンパイル時にチェックできない。 遷移先のViewControllerをいじるのはいわゆるprepareForSegueメソッドの中なので、複数の遷移に関する処理が一つのメソッドにまとめられてしまう所 override func prepare(for segue: UIStorybo

    Segueを使わずにかっこよく画面遷移する方法を考えた - hiragram no blog
  • Auto Layoutの静的な制約で実現する伸び縮みするヘッダービュー - 24/7 twenty-four seven

    TL;DR, 優先度の異なる複数の制約を同時に定義することで、静的な定義だけで動的な振る舞いを実現できる 動的な要素の少ない構造のビューはより堅牢である はじめに 読みやすくメンテナンスしやすいソフトウェアを作るために重要なことの一つは構造をシンプルに保つことです。 iOSアプリのビューは壊れやすいソフトウェアの代表ですが、できるだけシンプルに作ることで変化に強い、堅牢で壊れにくいソフトウェアにできます。 動的な要素が少ないということは、ビューがシンプルであるということの指標の1つと言えます。 この記事では下記に示すような、スクロールに合わせて伸び縮みするヘッダーを、動的な要素を無くし、Auto Layoutの静的な制約のみで実現する方法を解説します。 動的な要素とは、実行時におけるビューおよび制約の追加・削除、Frameや制約を更新することと、機種やスクリーンサイズ、標準UIコンポーネン

    Auto Layoutの静的な制約で実現する伸び縮みするヘッダービュー - 24/7 twenty-four seven
    nabeatsu1
    nabeatsu1 2018/11/06
    同じようなレイアウトを動的に制約を変更して実装していたけど苦しかった。これはすごい
  • Storyboardとの付き合い方 2018

    Aug 12, 2018 少し前に、自分のStoryboardの使い方をツイートしたら割と反応があったので、改めてまとめてみようと思います。これまで何年かiOSアプリの開発をしてきて、Storyboardとの付き合い方は何度も変わりました。なので、今回紹介するものはあくまで2018年現在のもので、来年には変わっているかもしれません。 説明のイメージを掴みやすくするため、画面の例を用意しました。左が編集時のStoryboardで、右が実行時のiOSシミュレーターです。具体的なトピックが出た時に、この例を説明に使うことがあります。 記事の最後にこれが動作するサンプルコードも用意しましたので、興味があればどうぞ。 Storyboardを使う目的 以下の2つを重視して、Storyboardを選択しています。 動作確認に掛かる時間を短縮する 成果物の構造を把握しやすくする ただし、Storyboar

    Storyboardとの付き合い方 2018
  • Swift時代に悩ましいUIViewControllerをどう扱うか - Qiita

    これは Swift Tweets の発表をまとめたものです。イベントのスポンサーとして Qiita に許可をいただいた上で、このような形(ツイートの引用)で投稿しています。 Twitterのハッシュタグはこちら Swift Tweetsオーディエンスの皆様こんばんは!Tweetupという新しい試みに参加させていただきとてもワクワクしています。日は「Swift時代に悩ましいUIViewControllerをどう扱うか」についてご紹介させていただきます。よろしくお願いします。 #swtws pic.twitter.com/JWfOjH0E1W — susieyy (@susieyy) 2017年1月14日 まずは自己紹介から。杉上洋平と申します。iOSの開発は日iPhoneが販売されたときに、嫁が早速手に入れてアプリがないので作ってほしいと言われたのをきっかけに、2008年からアプリを作

    Swift時代に悩ましいUIViewControllerをどう扱うか - Qiita
  • Xcode 10の便利な新機能 - Qiita

    はじめに Xcode 10のβ版で新機能を試してみました。 便利な機能をいくつか紹介します。 開発環境 環境は、以下の通りです。 Category Version Storyboard objects library StoryboardでObjectを検索する方法が変わりました。 画面右上の「Objects Library」からObjectを検索し、使用することができます。 Storyboardを開いている状態で以下のショートカットキーを入力することで簡単に「Objects Library」を開くことができます。 command + shift + 「l」 Code snippets コードエディタ上で以下のショートカットキーを入力することでコードスニペットを使用することができます。 command + shift + 「l」 (Storyboardの「Objects Library」と

    Xcode 10の便利な新機能 - Qiita
    nabeatsu1
    nabeatsu1 2018/06/11
    便利だ
  • xib/storyboardとの付き合い方について

    Jun 25, 2013 アプリが大きくなるとstoryboardの小回りの利かなさに泣きたくなることがあると思います。 そうした反動からすべてのUIをコードで実装しているiOS開発者も少なくないと思います。 自分は全部storyboardにして痛い目にあってから、全部コードにしてまた痛い目に遭い、 結局コードとxibとstoryboardを上手く使い分けるのが良いという結論に達しました。 最近、やり方が定まってきてストレスを感じなくなってきたので方法をまとめます。 これから書くことは個人の見解ですが、自分のやり方を決める上では無駄にならないと思います。 使い分け方と理由 基方針: 以下に挙げる条件にマッチする場合除いて、コードで実装を行います。 xibを使う条件 viewの複雑度が高い場合(subviewが2,3個以上の場合)にはxibを使います。 xibを利用する理由は以下のような退

    xib/storyboardとの付き合い方について
  • 1