我想要的布局是这样的:http://imgur.com/etb9ZKZ
我希望图像(以绿色显示)填充整个layoutcontol。在图像的顶部放置在底部的全宽我想要一个文本框/标签来放置标题。标题视图应具有黑色半透明背景。
这是我得到的最好的(下面的代码),但它有一些问题:
#1 - 文本没有像它想象的那样换行。它只是削减句子,就像其他人正在关闭屏幕一样。
#2 - 图像不会缩放到容器的宽度。
Utils.matToBitmap
答案 0 :(得分:0)
你应该使用Grid。
Label lblTitle = new Label()
{
BackgroundColor = new Color(0, 0, 0, 0.8),
LineBreakMode = LineBreakMode.WordWrap,
FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label))
};
lblTitle.SetBinding(Label.TextProperty, "headline");
Image imgBanner = new Image()
{
/*
HorizontalOptions = LayoutOptions.Fill,
VerticalOptions = LayoutOptions.End,
Aspect = Aspect.Fill
*/
};
imgBanner.SetBinding(Image.SourceProperty, "ImageUrlSource");
//=========== Addition Start Here ============//
Grid grid = new Grid();
grid.RowDefinitions =
{
new RowDefinition{ Height=new GridLength(200,GridUnitType.Absolute) },
new RowDefinition{ Height=new GridLength(30,GridUnitType.Absolute},
}
grid.Children.Add(imgBanner,0,1,0,2); //two rowspan
// == .Add(imgBanner,column,column+columnspan,row,row+rowspan)
grid.Children.Add(lblTitle,0,1,1,2); //one rowspan
View = grid;