Ash*_*Ash 4 xamarin.ios xamarin xamarin.forms
我在我的内容页面中显示图像,使其高度是页面高度的固定百分比。我使用具有星形单元行高的网格来执行此操作。但是,当内容页面放置在 TabbedPage 中时,总网格高度似乎是 [屏幕减去标签栏高度] 的高度,因此,图像显得有点短。
如果我可以在我的内容页面中访问标签栏高度,这将是对百分比的简单调整。
题:
1) 如何获取内容页面中的标签栏高度?
2)有没有更好的方法来达到预期的结果?
1) 如何获取内容页面中的标签栏高度?
我们无法直接从 PCL 获取标签栏高度。只需要一个自定义渲染器即可 TabbedRenderer
[assembly: ExportRenderer(typeof(TabbedPage),
typeof(CustomTabbedPageRenderer))]
namespace TabbedPageWithNavigationPage.iOS
{
class CustomTabbedPageRenderer : TabbedRenderer
{
public override void ViewWillAppear(bool animated)
{
base.ViewWillAppear(animated);
App.TabHeight = (int)TabBar.Frame.Height;
}
}
}
Run Code Online (Sandbox Code Playgroud)
定义TabHeight中App的PCL
public static int TabHeight { get; set; }
Run Code Online (Sandbox Code Playgroud)
获取高度 TabbedPage
protected override void OnAppearing()
{
base.OnAppearing();
int height = App.TabHeight;
}
Run Code Online (Sandbox Code Playgroud)
2)有没有更好的方法来达到预期的结果?
最好不要在Image上设置固定框,也不要手动操作框。
AspectofImage可以帮助我们根据需要显示图像。
| 归档时间: |
|
| 查看次数: |
3421 次 |
| 最近记录: |