下の画像をご覧ください。
この「ポップアップ」ビューはどのように作成されましたか?そのビューをフォントで完全に模倣したいとしたら、どうすればよいでしょうか。
このための SDK 公開コンポーネントはありませんが、ビューの階層を使用して非常に簡単に作成できます。
UIView - メイン ビュー。ベジエ パスを使用して、ソースからポイントする突起を作成します。レイヤーにボーダーとドロップ シャドウが追加されています。
UIButton - 小さいフォント
UIButton - 大きいフォント
UIButton - フォント タイプの変更
UIButton - セピアのコンテナ。
UILabel - 「セピア」テキスト UISwitch - セピアのオンとオフを切り替える
ビューをアニメーションで表示および非表示にするだけです。また、デリゲート コールバックを作成して、ポップオーバーでイベントが発生したときにデリゲートに通知します。
// Delegate returns if the text can get smaller to enable/disable the button
- (BOOL) didSelectSmallerFont:(CGFloat)fontSize;
// Delegate returns if the text can get larger to enable/disable the button
- (BOOL) didSelectLargerFont:(CGFloat)fontSize;
- (void) didChangeFont:(UIFont*)font;
- (void) didToggleSepia:(BOOL)enabled;
等
ピラミッドの形状は、ポップアップを表示するためにクリックされたボタンに関連付けられていません。UIImageView の方が簡単な解決策ですが、ポップアップ ビューのサブビュー、UIImageView または UIView に描画される可能性があります。間違いなく、ポップアップ ビューをコーディングして、その矢印を画面上の任意のポイントまたは任意の方向に向けることができます。私がやろうとしているのは、 という init メソッドを使用してポップアップをインスタンス化し、ポップアップの起動initFromPoint:
に使用するボタンの中心値を渡すことです。次にviewDidLoad
、ポップアップのメソッド内で、ポイントに基づいてポイントを適切に配置します。