子类化UICollectionView
有人知道如何在xamarin.ios中为UICollectionView子类吗? 我尝试了这个 public class MyCustomUICollectionView : UICollectionView { [Export ("initWithFrame:")] public InfinitiveScrollingUICollectionView (CGRect frame) : base(frame) { // initialization } } 但我得到 UIKit.UICollectionView.UICollection(Foundation.NSCoder) has some invalid arguments Argument #1 cannot convert coregraphics.cgrect expression to type Foundation.nscoder`. 的最佳超载方法
8 2024-04-25
编程技术问答社区
UICollectionView内的UICollectionView将不会滚动
我在另一个uicollectionView的每个单元格中都有一个UicollectionView.外部UICollectionView滚动细垂直,但是垂直UicollectionView内部每个单元格内部的Uicollectionview不会滚动,我不知道为什么. 这是我的ViewController: using System; using Foundation; using UIKit; namespace ColInColTest { public partial class ViewController : UIViewController, IUICollectionViewSource, IUICollectionViewDelegate { UICollectionViewFlowLayout LayoutOne; UICollectionView ColOne; protected ViewC
24 2024-04-25
编程技术问答社区
UICollectionViewFlowLayout 最小行距未应用于整个集合视图-Swift
我正在为日历创建Uiview子类,其中使用流程布局的UICOLLECTIONVIEW用于显示日期.代码是: override func draw(_ rect: CGRect) { super.draw(rect) . . configureCalendarView() . } func configureCalendarView() { cellWd = Double(self.frame.size.width)/7.0 let layout = UICollectionViewFlowLayout.init() layout.minimumLineSpacing = 0.5 layout.minimumInteritemSpacing = 0.0 layout.secti
30 2024-04-23
编程技术问答社区
如何改变UICollectionView中整个部分的背景颜色?
在UicollectionView中,我想给整个部分具有统一的背景颜色,而不是单个单元格或整个收集视图. 我看不到任何代表方法,任何建议? 解决方案 首先,让UicollectionReusableView成为您的背景视图.我只是将我的我设置为红色. class SectionBackgroundDecorationView: UICollectionReusableView { override init(frame: CGRect) { super.init(frame: frame) self.backgroundColor = .red } required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } } 然后,在yourCollectionViewCont
14 2024-03-27
编程技术问答社区
UICollectionView-如何设置行的背景颜色
我有一个UICollectionView,只有一个部分.有没有办法设置每一行的背景颜色? (就我而言,这将是从黑色到白色的梯度) 解决方案 CollectionViews实际上没有行的概念,因为它的设计为灵活的布局. 您的最佳选择很可能具有单元格的背景,并删除单元格之间的所有填充/边距. 如果最后一行不满,这将是一个问题,因此,如果数字需要灵活,则必须添加空单元格. 其他解决方案 您可以使用cell.backgroundColor = [UIColor magentaColor]; 在单元格上设置颜色 其他梯度您必须分层并将其设置为"下面代码"的单元格 CAGradientLayer *gradient = [CAGradientLayer layer]; gradient.frame = cell.bounds; gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor whiteColor
6 2024-03-27
编程技术问答社区
如何以编程方式选择UICollection视图单元并更新一个指针数组?
我将Indexpath与指针阵列与我的数据模型匹配,以查看哪个曲目正在播放,以便我可以使用didSelectItemat委托方法控制音频播放.即,当细胞被敲击时,它会检查以查看基于所选单元格的indexpath播放的歌曲. (我正在播放并暂停DidSelectitemat代表中的音频).我是通过在给定的Indexpath的指针阵列中切换布尔值. 当您手动选择单元格时,这非常适合播放和暂停音频(点击或单击). 我想以编程方式选择其他单元格 这是一些可以帮助解释的代码: let workData = TypeData.createWorkMusicArray() var musicDataArray: [TypeData] = [] var keys = [TypeData]() var pointerArray: [TypeData : Bool]! var currentTrack: Int! override func viewDid
14 2024-03-21
编程技术问答社区
AVPlayerLooper每次迭代后都会出现黑色闪光
我正在使用苹果的示例代码在UICollectionViewCell背景上播放视频. 我正在使用AVPlayerLooper,因为它是同一视频的迭代. 我的问题是,当视频到达末尾时,它显示出轻微的黑色屏幕闪光灯,也许它正在寻找0次,我不确定. 这是代码: Apple的协议 protocol Looper { init(videoURL: URL, loopCount: Int) func start(in layer: CALayer) func stop() } apple提供的玩家循环类 // Code from Apple class PlayerLooper: NSObject, Looper { // MARK: Types private struct ObserverContexts { static var isLooping = 0 static va
24 2024-03-21
编程技术问答社区
嵌入UITableView的UICollectionView单元格无法自动调整大小
我已经花了几天的时间在各种帖子上尝试建议的事情,但无法弄清楚这一点.我可能对这个问题很正确! 我正在从Android转到iOS,并且似乎在AutoLayout上遇到了一些麻烦.具体而言,将UicollectionView调整到其内容的高度.每个集合视图可以根据其内容具有不同的单元格大小,但是给定行上的每个项目的单元大小将相同. uicollectionView嵌套在uiatebleviewcell中. uitaiteViewCells似乎正正确地调整了其内容高度,并且查看调试视图Hierarrchy这个问题似乎是UicollectionView. 我创建了一个迷你演示,并将其放在此github上(下面的链接).我投入了大量的测试数据,因此ViewController VC的底部有点混乱.演示只是毫无障碍,每行如何具有不同的内容大小.可以有相同样式的几个表行. 注意:我必须将以下行添加到类别Rowcell.swift,以便我获取以下屏幕截图.没有这条线,uicoll
16 2024-03-21
编程技术问答社区
从日志输出中识别并修复自动布局问题
我几乎完全在Interface Builder Storyboard中准备了以iOS应用为重点的多设备信息.我正在将带有文本或其他内容的表视图控制器用于静态表视图单元格. 在特定的单元格中,我想要具有相同高度行但各种宽度的文本字段网格 - 取决于文本字段的长度. 我使用的是包含水平堆栈视图的垂直堆栈视图,所有这些都具有对齐方式:填充和分发:按比例填充. 如果我没有减小最小字体尺寸,则网格根本不会出现在某些设备上,但是在大量摆弄之后,我可以使网格跨类尺寸出现在模拟器上... 但是,日志显示"无法同时满足约束……" "", "
4 2024-03-21
编程技术问答社区
uicollectionviewcell的高度,带有2个多行uilabels/自尺寸收集视图单元格
我有一个原型,应该看起来像这样: 在左侧,有一个UIImageView我垂直居中并将其固定在UICollectionViewCell的开始中. 接下来是标题UILabel,我将其固定在UICollectionViewCell的顶部和结尾.我还将其固定到UIImageView的末端. 下面是一个细节UILabel,我将其固定在标题的底部,UICollectionViewCell的末端,并约束它具有与标题相同的宽度. 下面是一个描述UILabel,我将其固定在细节的底部,UICollectionViewCell的末端和UICollectionViewCell的底部.它也具有与标题相同的宽度. 我想实现的目标 标题和描述标签具有0个线数(多行),因为我不知道标签在运行时有多少行. 通过我的自定义UICollectionViewLayout我为单元格提供了目标宽度.现在,我需要弄清楚,给定宽度必须多高. 我有一个不可见的UICollectionVi
14 2024-03-21
编程技术问答社区
改变启用了自动布局的控件的位置,就会恢复变化?
我应用程序的一部分是在UicollectionView中显示列表,如果用户向下滑动屏幕,我将在ViewController的顶部向Uisearchbar展示Uisearchbar. 我在一个单独的ViewController中完成了所有这些. 我使用autoLayout将控件定位在该ViewController中. 我将搜索栏表单y = -88移至y = 0,然后向下移动收集视图以在用户向下滑动屏幕时为searchbar提供空间,我的问题是,如果我致电reloddata,搜索栏和CollectionView都可以移至他们以前的自动划分位置 我使用下面动画移动它们 [UIView animateWithDuration:0.4 animations:^(void){ fileSearchBar.frame=fileSearchBar.frame=CGRectOffset(fileSearchBar.frame, 0,88); char
8 2024-03-21
编程技术问答社区
将UICollectionView置入UITableViewCell中
我正在尝试构建一些东西 我正在尝试使用uicollectionview构建标签列表视图,然后将其嵌套到我的自定义uitableviewcell中. 我现在有什么 搜索互联网后,我找到了问题的关键: 子类UicollectionView和实现其内在的内容大小属性. 但是,当我将自定义的uicollectionview嵌套到自大的uitableviewcell中时,整个过程都无法正常工作.布局被打破. 无论我如何更改代码,我都会获得以下3个buggy UIS之一. 收集视图的高度总是错误的,要么太小或太大,它不能拥抱它的内容正确. 当我使用Debug View Hierarchy检查视图时,我发现尽管UI被打破,但收集视图的contentSize属性具有正确的值.似乎内容大小属性无法及时反映到UI. class IntrinsicCollectionView: UICollectionView { override va
22 2024-03-21
编程技术问答社区
当单元格使用自动布局时设置UICollectionViewCell的尺寸
i具有动态高度的UICollectionViewCell.它包含一个UIWebView,该UIWebView不同步地加载一些内容.加载后,它需要调整大小以适应其内容. 我通过更改web view的高度约束来调整小区大小. 我还将委托方法发送给电池已经大小的集合view controller,我需要使布局无效. 但是,我遇到有关矛盾约束的自动布局错误.似乎收集视图正在尝试调整小区大小. 有人知道如何使该设计起作用吗? 解决方案 通过布局对象为单元格指定显式大小的布局对象.与表视图类似,您实际上无法从外部进行布局. 要实现您的设计,您需要使布局对象意识到单元格所需的大小基于其内容.有几种实现这一目标的方法,没有一个很棒的方法.在您的情况下,您可能需要在布局无效的同时将新的内容大小传递回新的内容大小,并以某种方式将该索引路径的新大小恢复到布局. 我也不会更改网络视图的高度约束.将其固定在单元格内容视图的边缘上,并让其大小由从布局对象发送的大小来确定.
0 2024-03-21
编程技术问答社区
cellForItemAt没有在collectionView中调用。
我有一个输入视图,将显示收集视图.我为该InputView使用了自动布局.运行App NumberOfitemSinsection时,请调用CellForiteMat.因此没有显示单元格.使用约束我做错了什么? 我还创建了项目 0B5UHWSK1E6DSRDA5BMTSY2ZZBGS/VIEW viewcontroller.swift override func viewDidLoad() { super.viewDidLoad() textField.inputView = InputPhotoView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 265)) textField.becomeFirstResponder() } inputphotoview.swift class InputPhotoView: UIView { let CellI
10 2024-03-21
编程技术问答社区
在CollectionView中的CollectionViewCell中自动调整图像大小,并自动布局
我有一个带有水平uicollectionViewFlowlayout的收集视图. 我正在尝试实现: 如果设备方向是肖像,则UIImageView宽度将是质量的.景观模式也是如此. 示例 - iPhone上的标准照片应用程序. 不幸的是,我看不到如何使用AutoLayout实现它.我将其设置在UIImageView上,以使其大小与单元格相等.但是看起来卖出本身不能固定在父景观上. 阅读了类似的问题后,必须使用 编程调整细胞大小. func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { return CGSize(width: width, height: height)
10 2024-03-21
编程技术问答社区
UICollectionView没有调用intrinsicContentSize
i具有UICollectionViewController,该>生成具有随机颜色的单元格,以进行测试.现在,UICollectionViewController嵌入了UIScrollView中,我希望ScrollView的大小与contentSize相同. 我制作了一个UICollectionView的子类,实现了intrinsicContentSize方法,并将UICollectionView的类设置为我在IB中的自定义类.但是,intrinsicContentSize永远不会被调用.我的设置与UITableView完全相同,在那里可以完美无缺. 对此有什么想法? - (CGSize)intrinsicContentSize { [self layoutIfNeeded]; return CGSizeMake(UIViewNoIntrinsicMetric, self.contentSize.height); } 解决方案 我不确定为什么会发生.
4 2024-03-21
编程技术问答社区
UITableViewCell-AutoLayout里面的UICollectionView
我在UITableViewCell内使用UICollectionView.一切都很好,但是我在自动布局上有一些问题. UICollectionView应该只显示无水平或垂直滚动​​的单元格.因为现在我在我的UITableViewCell内有可滚动的UICollectionView UICollectionView以下代码对我而言无法获得该单元的动态表单元的高度,但对于其他细胞. self.tableView.rowHeight = UITableViewAutomaticDimension self.tableView.estimatedRowHeight = 44 我在情节板上取消了选项"启用滚动"的选项,但是结果是,我只是无法滚动,也看不到其余的收集视图. 目前 如果有人有想法,那将是很棒的. 非常感谢. 解决方案 您需要在UICollectionView上设置一个高度约束.如果您只是将UICollectionView固定在UITableViewCell>上
16 2024-03-21
编程技术问答社区
动画制作时无法同时满足约束条件
我使用IB设置了六个用户约束,看起来像这样: H:|-(593)-[UIView(411)]-(20)-| V:|-(20)-[UIView(288)]-(396)-| 我通过更改约束然后调用布局来增长和缩小视图.例如,要增强观点,我会做: H:|-(20)-[UIView(984)]-(20)-| V:|-(20)-[UIView(663)]-(20)-| 然后致电 [UIView animateWithDuration:.5 animations:^{ [self.view layoutIfNeeded]; }]; 这种技术增长并收缩了我的观点,看起来不错,但是我给了一个相当混乱的警告: Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't wa
20 2024-03-21
编程技术问答社区
在UICollectionView上动画化自动布局约束的变化
从上面如此问题我问,我问,我问过哪个问题我正在尝试为UICollectionView高度的更改(在示例中为yellowBox)进行动画.通过以下代码在集合视图上修改自动布局约束来触发此高度的变化: - (IBAction)expandYellowBox:(id)sender { [UIView animateWithDuration:0.5 animations:^{ self.yellowBoxHeightConstraint.constant += 50; [self.view layoutIfNeeded]; }]; } 但是,当我调用[self.view layoutIfNeeded]时,这会导致收集视图被重新加载,因此它会明显地向用户闪烁.但是,我不希望收集视图重新加载,而只是为了使其高度变化动画.有什么方法可以避免
8 2024-03-21
编程技术问答社区