2017-08-20 10 views
1

序文として、私はXamarinで多くの経験がないことに注意したいと思います。私は最初のアプリケーション(正当な使用が最初のもの)に取り組んでいます。画面の左側に引き出しを追加するのではなく、タップしたときにボタンを追加するボタンを追加したいと思います。xamarin.formsで拡張ボタンを作成するにはどうすればよいですか?

Androidの公式Redditアプリ(おそらくiOSでも可能)は、私が実装しようとしているものとまったく同じです。

私は画像を埋め込むだろうが、私はボタンがタブをスクロールする際に所定の位置に残ってTabbedPageように思える上にオーバーレイされていることを強調したいです10評判

Imgur Album of screenshots from the official Reddit app

を必要としています。ボタンを最初にタップしても私が実装したいアニメーションもあります。

さらなる調査の結果、私はそれが"Micro interaction"と呼ばれるものの例であることを発見しました。その記事の第5の例が私が探しているものです。

この記事の目的

私は(それは、タブ間の永続的であるように)TabbedPageの上にボタンを追加したいタップすると、アニメーションを通じてより多くのボタンを明らかにする。可能であれば、できるだけプラットフォーム固有のコードをほとんど使用しないでください。

私が以前に触れたように、私はXamarin(そしてモバイル/フロントエンド開発)の新人ですから、どこから始めるべきか分かりません。誰かがこれを複製する方法を説明するのに十分な優しさがあるか、正しい方向に私を向けるとすばらしいだろう。

+0

これは残念ながらXamarin.Formsではサポートされていません。 Xamarin.Formsは、UI要素に関するすべてのプラットフォームの共通点を対象としています。 Android SDKは要件を['FloatingActionButton'](https://developer.android.com/reference/android/support/design/widget/FloatingActionButton.html)の形式でサポートしていますが、 – Demitrian

答えて

1

すでに言及したように、このようなものはXamarin.Formsの範囲にはありません。しかし、AndroidとiOSの両方にフローティングアクションボタンを実装したXamarin.Formsライブラリがあります。それを見てくださいhere

デフォルトでは、達成しようとしているもののコントロールがない場合は、サポートしたいプラットフォームごとにカスタムレンダラーを作成できます。 official documentationにカスタムレンダラの詳細を読んでください。

は、ライブラリーの場合、私は、開発者がそうでUIControlクラスから派生し、LayoutSubviewsような特定のメソッドをオーバーライド、TouchesBeganTouchesEndedによってcustom iOS controlを作成に連結しました。レンダラーでは、そのコントロールの新しいインスタンスを作成し、XFがiOSで表示するネイティブコントロールとして設定します。

Androidでは、開発者はImageButtonクラスから派生し、そこから移動します。 iOS rendererAndroid rendererSample project

それが働いて得るためにいくつかの作業が必要になる場合がありますので、ライブラリは積極的にもはや維持されていないことに注意してください:ここでは、チェックアウトする必要がありますリンクです。

関連する問題