如何解决从Shell FlyoutItem导航到上一层
我在Shell View中具有以下结构
<FlyoutItem Route="home" Title="Home">
<ShellContent ContentTemplate="{DataTemplate views:HomePage}" />
</FlyoutItem>
<FlyoutItem Route="leaverequest" Title="Leave Request">
<ShellContent ContentTemplate="{DataTemplate views:LeaveRequestView}" />
</FlyoutItem>
项目正确显示。 当我单击“请假请求”项时,LeaveRequestView随即在顶部导航中打开“汉堡包”菜单。我希望LeaveRequestView改为显示后退按钮。
我尝试在ShellContent中设置Route属性而不是FlyoutItem,但结果是相同的。
上面的路由定义中是否需要做一些事情,或者这是在LeaveRequestView XAML中设置的属性?
PS:如果我使用Shell.Current.GoToAsync(“ leaverequest”)在后面的代码中导航,则行为正确。我在顶部导航中看到了后退按钮。
解决方法
很遗憾,它无法显示带有已定义XAML的后退按钮。
select adjust.id,adjust.orginal_ticket_id,adjust.trans_history_id,adjust.ticket_id
from trans_history_shared adjust
where cdr_type=201
and adjust.event_timestamp <= v_end_time_summary
and adjust.create_date >= v_start_time_summary
and adjust.create_date < v_end_time
and exists (
select origin.ticket_id
from trans_history_shared origin
where origin.ticket_id=adjust.orginal_ticket_id
and origin.event_timestamp <= v_end_time_summary
and origin.create_date >= v_start_time_summary
and origin.create_date < v_end_time
and (origin.revenue_date is null or origin.revenue_date = v_start_time_summary)
)
and ticket_id = (
select latest.ticket_id
from trans_history_shared latest
where latest.orginal_ticket_id = adjust.orginal_ticket_id
and cdr_type=201
and latest.event_timestamp <= v_end_time_summary
and latest.create_date >= v_start_time_summary
and latest.create_date < v_end_time
and (latest.revenue_date is null or latest.revenue_date=v_start_time_summary)
order by latest.create_date desc,latest.event_timestamp desc
fetch first 1 rows only);
从上面的路线定义上方,我们无法使<FlyoutItem Route="home" Title="Home">
<ShellContent ContentTemplate="{DataTemplate views:HomePage}" />
</FlyoutItem>
<FlyoutItem Route="leaverequest" Title="Leave Request">
<ShellContent ContentTemplate="{DataTemplate views:LeaveRequestView}" />
</FlyoutItem>
来显示后退按钮。
因为它是由Xamarin Forms Shell设计的。如果在XAML中使用LeaveRequestView
,则表示将通过Humburger菜单导航子视图。
如您所说,除非使用FlyoutItem
进行导航,否则将显示后退按钮。同时,您会看到Humburger菜单未显示未显示。
注意:这应该是Xamarin Forms FlyoutItem的典型功能。如果不需要此功能,则无需创建Shell应用程序。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。