このアプリでは、メインビューコンテナとしてマスターディテールコンテナがあります。ユーザは、メニューとタブバーの両方を介してナビゲーションを実行できるように、タブ付きページをマスター/ディテールコンテナの詳細ページとして使用したいと考えています。 Exrinでこれを達成する方法はありますか? ここまで見てきたように、マスター詳細ページとタブ付きページが別々にサポートされています。どのようにこのページを組み合わせるのですか?Exrinのmasterdetailページの詳細ビューとしてのタブ付きページ
1
A
答えて
0
これが機能するには、Exrin 2.0.2以降が必要です。
まず、MasterDetailPageを保持するコンテナを少し更新する必要があります。インタフェースの定義は少し変更されています。
public class MainContainer : ViewContainer, IMasterDetailContainer
{
private MasterDetailPage page;
public MainContainer(TabbedViewContainer mainStack, MenuStack menuStack)
: base(Containers.Main.ToString())
{
page = new MasterDetailPage();
var mdp = new MasterDetailProxy(page);
NativeView = mdp.View;
Proxy = mdp;
DetailStack = mainStack;
MasterStack = menuStack;
RegionMapping.Add(Regions.Menu, ContainerType.Master);
RegionMapping.Add(Regions.Main, ContainerType.Detail);
}
private IHolder _detailStack;
public IHolder DetailStack { get { return _detailStack; } set { _detailStack = value; if (_detailStack is ITabbedContainer container) ((ViewContainer)container).ParentContainer = this; } }
private IHolder _masterStack;
public IHolder MasterStack { get { return _masterStack; } set { _masterStack = value; if (_masterStack is ITabbedContainer container) ((ViewContainer)container).ParentContainer = this; } }
public IMasterDetailProxy Proxy { get; set; }
public bool IsPresented
{
get
{
return page.IsPresented;
}
set
{
page.IsPresented = value;
}
}
public void SetStack(ContainerType type, object newPage)
{
switch (type)
{
case ContainerType.Detail:
page.Detail = newPage as Page;
break;
case ContainerType.Master:
page.Master = newPage as Page;
break;
}
}
}
第二に、代わりにコンストラクタでは、スタックの、あなたのTabbedViewContainer通過の通知、および必要に応じてこれを割り当てます。あなたのTabbedViewContainerはこのように見えるかもしれません。
public class TabbedViewContainer : Exrin.Framework.ViewContainer, ITabbedContainer
{
public TabbedViewContainer(MainStack mainStack, SecondStack secondStack)
: base(Containers.Tabbed.ToString(), null)
{
Children = new List<IStack>() { mainStack, secondStack };
var tabbedPage = new Xamarin.Forms.TabbedPage();
var tabbed = new TabbedProxy(tabbedPage);
NativeView = tabbed.View;
foreach (var child in Children)
{
tabbed.Children.Add(child.Proxy.NativeView);
}
}
public IList<IStack> Children { get; set; }
}
+0
このアップデートとHow-toの説明をありがとうございます:)ソリューションは新しいExrinバージョンでは期待通りに機能します。 –
関連する問題
- 1. 製品ページの詳細タブからライトボックス
- 2. Xamarin.Forms NavigationPageのバックスタックPRISMを使用したMasterDetailの詳細ビュー
- 3. イオンネストされたビュー、サイドメニュー、タブ、マスター詳細ページ、詳細ページに戻るボタンが表示されない
- 4. MasterDetail ToolbarItem詳細情報
- 5. jQuery Mobile - カスタムオブジェクトの詳細ページ
- 6. xamarin.formsのマスター詳細ページ
- 7. 詳細ページのソートMVC
- 8. タブ付きページ
- 9. 「パーマリンク」詳細ページは
- 10. Crystalレポートのリスティングと詳細ページ
- 11. Xamarin.Formsタブ付きページとログアウト
- 12. alfrescoワークフローフォームの新しいタブで「詳細を表示」ページを開きます
- 13. SharePointページのタブ付きコンテンツ
- 14. Xamarin.formsタブ付きページ
- 15. 同じページに編集フォームと詳細ビューを表示
- 16. Xamarinフォームのタブ付きページとMvvmcross
- 17. Xamarinのぼかしページ(マスターの詳細ページ)
- 18. 詳細がライトボックスにあるASP.NETマスター/詳細ページの例?
- 19. Django Url、Slug詳細ページ
- 20. DataListから詳細ページへ
- 21. ページのユーザーの詳細を表示
- 22. ニュース詳細ページの日付のセマンティックxhtmlマークアップ?
- 23. ページ好きのようなFacebookページの詳細を取得できますか?
- 24. 制限付きFacebookページPHP APIを使用したグラフAPIの詳細
- 25. タブページ内のマスター詳細ページXamarin
- 26. Xamarinフォーム - 右サイドマスターの詳細ページ
- 27. カスタマイズされたマージリクエストの詳細ページ
- 28. 動的リストビューの詳細ページ(Jquery Mobile)
- 29. 作者のZK8コール詳細ページ(zul)
- 30. マスター詳細ページ - Androidのメニューアイコンを表示
私はまもなくこれを見ていきます。コンテナを持っているので、コンテナ内には複雑な状況があります。 –
さて、これを行う方法が見つかりましたが、NavigationServiceにいくつかのバグがあります。これらを修正し、新しいExrinバージョンをリリースし、それを行う方法を詳しく説明します。 –
@AdamPedley新しいExrinバージョンをお待ちしております:) –