2016-05-04 13 views
0

Aritchieのユーザダイアログ5をインストールしましたが、Xamarin.Formsバージョン2.2を使用しています。 AndroidでUserDialogs.Instance.ErrorToastを使用すると、テキストが画面の幅よりも長い場合、テキストが切り取られます。 これは、メッセージの重要な部分がユーザーに表示されないことがあるため、問題となります。 (たとえば、iOS上の同じトーストメッセージは切り捨てられず、自動的にコンテンツのサイズになります)。Androidでトーストメッセージ用にトランケートされたAritchieテキスト

この矩形の高さを増やすにはどうすればよいですか?または、自動サイズを設定するにはどうすればよいですか?

enter image description here

答えて

0

あなたのAndroidアプリがActivityベースAppCompatActivityで実行されている(マテリアルデザインを使用しているので、あなたがあると思われている)、ACR UserDialogsはトーストを表示するためのSnackBarを作成し、設計AによるれますGoogle/Android SnackBarは短いメッセージであるはずです。

https://www.google.com/design/spec/components/snackbars-toasts.html

スナックバーは、画面の下部に簡単なメッセージを示すことによって、操作約軽量なフィードバックを提供するが内蔵されていない方法を自動サイジングまたは複数にそのまま

行の折り返し。事へのすべてのポイントは、他のSOこれに関連した質問とその回答にありますが、あなたはそれが作成されたときにスナックバーフラグメント内に含まれているAndroidベースのビューを変更する必要があります:

TextView tv = (TextView) view.FindViewById(Resource.Id.SnackbarText); 
// change the font size, view size, content wrap settings, etc... 

これらが重要な場合ユーザーが却下する必要があるメッセージ、おそらくポップアップダイアログを使用したメッセージがあなたのデザインで機能するでしょう。

+0

私はこのページをPCLで作成しますが、Androidプロジェクト内でコードの行をどこに配置する必要があるのか​​分かりますか?おそらくContentPage全体のカスタムレンダリングですか? – Stefano

+0

@StefanoあなたはAcr UserDialogsをスキップし、独自のXamarin.Formsレンダリングを使用して独自のToastコントロールを作成するか、依存関係サービス(このように簡単/迅速にする)を実行するか、Acr UserDialogソースを変更することができます。 ToastAppCompat'メソッド@ https://github.com/aritchie/userdialogs/blob/7e7a42a3e87a32701f071768552bc8622981bab1/src/Acr.UserDialogs.Android/UserDialogsImpl.cs – SushiHangover

+0

私は簡単/早い方法で行きたいと思いますが、残念ながら私はどのように考えていませんか?この依存関係サービスを実装するには、これについてはかなり新しいです。私は、デバイスにファイルを格納し、ローカルにデータベースを格納するための依存関係サービスを実装しました。私はこのトーストを表示し、その属性を変更するために依存関係サービスを使用する方法を知らない:( あなたは私に説明したり、どこかのサンプルを教えてもらえますか? – Stefano

関連する問題