This content has moved; redirecting to the new location.
This content has moved; redirecting to the new location.
こんにちは、@yoheiMuneです。 現在、Music Pocketのver.2を開発しています。例えばViewを消すようなUI変更の場合にも、ちょっとしたアニメーションを付与することで、とても理解しやすい動きになります。そのちょっとしたアニメーションを実装する機会がSwiftでありましたので、実装方法をブログに残したいと思います。 Special Thanks to https://flic.kr/p/s6Jckc UIVewをアニメーションさせる UIViewをアニメーションさせるのは簡単で、数行コードを書くだけで実現することができます。今回は以下のViewをアニメーションさせることにします。 // アニメーション対象 let aView = UIView(frame: CGRectMake(0, 0, 100, 100)) そして、アニメーションについて今回はUIView.anim
簡単に言ってしまうと、frameとはsuperviewを基点に考えた座標系です。boundsとはローカルviewを起点に考えた座標系になります。 左側の図はviewの左上の原点が(0, 0)の幅150、高さ200のview。 右側の図はviewの左上の原点が(50, 50)で同サイズのview。 viewのframe値に関係なくboundsは自身の座標系を示すので常にoriginは(0, 0)を示していますね。sizeはframeもboundsも同じ値で(150, 200)です。 この例ではboundsのoriginはframeのoriginに影響を受けない事は分かりますが、そこまでしか分かりませんね。実はviewを拡大縮小・回転してみるともっと違いがはっきりとして来ます。以下で回転した場合の例を示します。
はじめに animateWithDuration(_:delay:options:animations:completion:) を使用してアニメーションさせる際のUIViewAnimationOptionsの設定について以下の4つの違いを視覚的に比較したかったので、シンプルなサンプルを作成しました。 Linear EaseIn EaseOut EaseInOut サンプル 以下Githubにサンプルプロジェクトをあげています。 また、Youtubeにサンプルプロジェクトを動作させた動画をあげているので、あわせてご覧ください。 Github: https://github.com/taji-taji/SwiftSimpleAnimationSample Youtube: https://www.youtube.com/watch?v=XoTJK8EVFv8 動作環境 iOS: 9.2 Xc
About Core AnimationCore Animation is a graphics rendering and animation infrastructure available on both iOS and OS X that you use to animate the views and other visual elements of your app. With Core Animation, most of the work required to draw each frame of an animation is done for you. All you have to do is configure a few animation parameters (such as the start and end points) and tell Core A
はじめに これは自分用のメモでもありますが、同時にもし「Storyboard 面倒くさい!ソースコードのみで UI 作りたい!」というような方がいらっしゃいましたら、ご参考になれればと思います。 また、ソースコードは GitHub に公開しております。 なぜコードで UI 作るか ぶっちゃけ言いますと自分 Storyboard 使えないだけです。はい。そもそも以前 Interface Builder の時代からまともにそういったツール使ったことなかったし、要素配置とかページ遷移とかもどうやって作ればいいのかわからないし、今まではゲームを作ってきたから iOS 特有の画面遷移とかも特に使ったことなかったし、あとマウスよりもキーボードのほうが速いってのもありますね。まあ要するに自分にとってソースコードのほうが画面配置がわかりやすいです。 実際作ってみる 目標と手段 まあ何事もまずは目標を決める
Objective-C時代のCGRectまわり こんなときよくあると思います。 CGRectからwidthだけとりたい 最大のYの位置をとりたい あるCGRectにCGPointが含まれてるとかを判定したい Objective-CのときはGlobalな関数の形で用意されていました。名前も長いので構造体の値を辿るのとそんなにコード量は変わらないのが残念でしたが、便利なのでよく使っていました。 追記: 構造体でアクセスした場合と関数で取得した場合に値が異なることがあるので注意してください。詳しくはコメント欄に書いてあります。 // 例1: 最小のx CGFloat minX = CGRectGetMinX(self.view.frame); // 関数 CGFloat minX = self.view.frame.origin.x; // 構造体アクセス // 例2: 幅 CGFloat wi
It’s been about a solid eight months since I first decided to jump completely into the Swift wormhole. Over those months I’ve slowly learned to stop writing Objective-C style code patterns with Swift syntax, and started to actually take advantage of the new language. But one thing I’ve recently picked up on is that I’m still using ugly non-Swift-like syntax with all my CGGeometry structures. CGRec
iOS開発におけるパフォーマンス改善の際、参考にさせていただいた記事まとめです。 (思い出したり新しい記事あったら随時追加していきます) パフォーマンスの改善ってくくりだと大雑把すぎてとっちらかるかもしれませんが 許して下さい。。 思い出したり見つけたら随時追加していこうと思っています。 こんなんあるよとか言っていただければ感謝の上、追加させていただきます。 まずは基礎 パフォーマンスチューニングに関するアップルのドキュメント まずはAppleさんの教科書的なドキュメントをまとめてくださったshu223さんの記事です。 UITableView, UICollectionView [iOS] TableView スクロールパフォーマンスの改善 なめらかに動作するUITableViewのつくりかた 見積もりの高さでUITableViewを高速化する話。 大抵のアプリの本丸はUITableVie
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く