gpt4 book ai didi

ios - MKAnnotationView 中的 detailCalloutAccessoryView 约束

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:02:30 24 4
gpt4 key购买 nike

我在调整以编程方式添加的 detailCalloutAccessoryView 的大小时遇到​​一些问题。

这是 View 的代码

HCSStarRatingView *annotationRating = [[HCSStarRatingView alloc] init];
annotationView.detailCalloutAccessoryView = annotationRating;

我尝试使用 initWithFrame 初始化 View ,但不知何故这不起作用,我最终得到了这个。

First Try

然后我发现我必须以编程方式添加 NSLayoutConstraint 才能正确调整 View 大小,因此我添加了此代码以进行约束。

NSLayoutConstraint *width = [NSLayoutConstraint constraintWithItem:annotationRating attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:80];
NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:annotationRating attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:45];
[annotationRating addConstraint:width];
[annotationRating addConstraint:height];

现在的 View 是这样的

Getting closer

现在我想摆脱它周围的空白。我想我必须添加顶部和底部约束,但我不知道该怎么做,因为我不知道我必须与哪些项目相关。

最佳答案

多余的空白是您选择的高度的函数。您的图像大约是它的高度的 5 倍宽,但是您要求在 80 x 45 pts 的框中渲染它(即高度超过宽度的一半而不是五分之一的 View )。如果你选择 ImageView 的尺寸来匹配(调整比例)图像的大小,你会得到更像的东西:

enter image description here

如您所见,通过明智地选择宽度和高度,空白将比您的示例中少。请注意,细节附件 View 之间存在一些您无法控制的固有空白,但通过确保正确设置宽度和高度,您可以将其减少到这些最小值。

关于ios - MKAnnotationView 中的 detailCalloutAccessoryView 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35669990/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com