web-dev-qa-db-ja.com

iPhone開発者:パスやFacebookアプリのようなスライド式引き出しを作成する

新しいFacebookアプリはグリッドアイコンレイアウトを廃止しているようです。最も興味深いカスタムナビゲーションレイアウトでは、一番下のビューにすべてのオプション(Facebookのプロファイル、ニュースフィード、メッセージなど)が表示され、それらは、上にスライドする別のビューをもたらします。 3行ボタンを押すと、ボトムビューが再び表示されますが、現在のビューは部分的に表示されます。 Pathアプリも最近、このスキームに合わせて更新されました。

これを再現する最良の方法は何ですか?オープンソースのオプションを検索しましたが、見つかりませんでした。 Three20もこれをサポートしていないようです。

34
Z S
26
Yosi Taguri

私が書いた別のオプション:ECSlidingViewController

Facebookのような向きの変更と、Pathのような左へのスライドをサポートしています。

ビデオデモ: http://vimeo.com/35959384

コード: https://github.com/edgecase/ECSlidingViewController

28

私はgithubで本当に素敵なプロジェクトを見つけました:

https://github.com/devindoty/DDMenuController

9
andreschneider

私がインターネットで見たものはすべて、Yosi Taguriが推奨するものはすべて複雑すぎます。引き出しは、グラフィックアセットがまったくなく、クラス拡張が不要で、iOS 3.0と下位互換性のある、UINavigationControllerの非常に単純なカテゴリによって実現できます。

これを見てください:

http://code.google.com/p/drawer-navigation-controller/

ビデオはこちら http://www.youtube.com/watch?v=5T-1-_pFbG

5
Ephraim

このプロジェクト(上記では言及していません)は、私にとって最も成熟し洗練されているように見えます。 https://github.com/gotosleep/JASidePanels

また、まだアクティブなようです。

編集:私はそれ以降に移行しました: https://github.com/mutualmobile/MMDrawerController IMOはほぼ完璧な実装です。

4
mxcl

jTRevealとDDMenuのどちらを選択するのか疑問に思う方は、JTRevealSidebarよりもDDMenucontrollerをお勧めします(@Yosiにリストされている他のオプションは使用していません)。はるかにシンプルで軽量で、Pathアプリの動作とまったく同じように動作します(要件に合わせて変更するのも簡単です)。 Haventは@Henningが言及した黒い背景の問題を見ました

2
Nitin Alabur

ここで私の答えを確認してください- iPhoneのFacebookアプリのようなSplitView -オープンソースコードのリストが含まれています。

2
Sagar

私のプロジェクト FRLayeredNavigationController はGitHubでほぼ同じ方向に進みます。

(レイヤー間の間隔は簡単に設定でき、もちろん回転をサポートします)。

デモビデオ/スクリーンショットをご覧ください:

1
Johannes Weiss

もう1つ、PPSlideDrawerがあります。

http://www.localwisdom.com/blog/2013/05/simple-sliding-drawer-implementation-for-ios/

@Ephraimの答え( http://code.google.com/p/drawer-navigation-controller/ )をチェックアウトしました。これは作業が非常に簡単だからです。引き出しナビゲーションコントローラーの問題は、スワイプアニメーションがユーザーの指に追従しないことであるようです。これは自動化されています。 PPSlideDrawerはそれを解決することを目的としています。私は自分のプロジェクトでそれを試してみるつもりで、いくつかのアップデートを投稿します。

以下はまだ「TODO」の下にある一部のための取り引きブレイカーかもしれません:

  1. 自動オープン機能を実装します。
  2. (単にパン操作を検出するのではなく)Edge機能からのスワイプを実装します。
  3. ランドスケープのサポート。
0
Matthew Quiros

これは、ストーリーボードで非常に簡単に実装および使用できるものです。縮小、非表示アニメーション、および方向の表示を制御します。

https://github.com/HelloMihai/HMSideDrawerDirectional

0
mihai