如何覆盖 JSQMessagesViewController 中自定义媒体项的 mediaView 显示大小?
How to overrride mediaViewDisplaySize for a custom media item in JSQMessagesViewController?
我想在 JSQMessagesViewController 中自定义自定义媒体项的大小。我正在向 UIView 添加标签,并尝试通过设置容器视图的框架大小来设置大小。
UIView* containerView = [[UIView alloc] initWithFrame: CGRectMake(0, 0, 100, 100) ]
containerView.frame = CGRectMake(0.0f, 0.0f, 315.0f, 100.0f);
UILabel *label = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 50, 50)];
label.text = @"vendor name";
[containerView addSubview:label];
设置帧大小适用于图像视图,但现在适用于 UIView。即使这样,在图像视图的情况下,未填充的内容也会有白色 space。
此外,我可以通过 mediaViewDisplaySize
调整所有视图的占位符大小,但我无法以不同方式自定义每个子类。
如何根据子类有选择地设置占位符视图的大小?
在您的 mediaItem
子类中,您需要覆盖 mediaViewDisplaySize
。如果您需要为每种类型的 mediaItem
设置不同的大小,那么对每个类型进行子类化将是最简单的。
我想在 JSQMessagesViewController 中自定义自定义媒体项的大小。我正在向 UIView 添加标签,并尝试通过设置容器视图的框架大小来设置大小。
UIView* containerView = [[UIView alloc] initWithFrame: CGRectMake(0, 0, 100, 100) ]
containerView.frame = CGRectMake(0.0f, 0.0f, 315.0f, 100.0f);
UILabel *label = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 50, 50)];
label.text = @"vendor name";
[containerView addSubview:label];
设置帧大小适用于图像视图,但现在适用于 UIView。即使这样,在图像视图的情况下,未填充的内容也会有白色 space。
此外,我可以通过 mediaViewDisplaySize
调整所有视图的占位符大小,但我无法以不同方式自定义每个子类。
如何根据子类有选择地设置占位符视图的大小?
在您的 mediaItem
子类中,您需要覆盖 mediaViewDisplaySize
。如果您需要为每种类型的 mediaItem
设置不同的大小,那么对每个类型进行子类化将是最简单的。