如何在Swift的HomeVC中给xib单元格按钮动作
我创建了Xib CollectionView单元格..并且我能够在HOMEVC中使用其所有值,如 class HomeVC: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource,UICollectionViewDelegateFlowLayout{ @IBOutlet var collectionView: UICollectionView! override func viewDidLoad() { super.viewDidLoad() let nib = UINib(nibName: "MainCollectionViewCell", bundle: nil) collectionView.registerNib(nib, forCellWithReuseIdentifier: "MainCollectionViewCell") } func collectionView(
12 2024-04-05
编程技术问答社区
构建xib界面生成器并将其作为子视图加载到iphone中
我想知道是否可以构建视图及其通讯XIB文件. 然后,在通用控制器中,以编程方式加载此视图,并将作为当前视图的子视图添加. 此子视图应充当一个通用信息框,可以由许多控制器加载. 谢谢 莱昂纳多 解决方案 查看了一些Stackoverflow线程后,我自己找到了解决方案.因此,我想分享我发现的内容,并查看是否是一种可接受的解决方案. 基本上,这就是我所做的: 用我所有必需的iboutlet创建一个MyView.m查看文件 在接口构建器中构建MyView.xib视图,留下默认文件的所有者,并将视图设置为MyView.m 使用此代码 NSArray *xib = [[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil]; MyView * myView = [xib objectAtIndex:0]; [self addSubview:myView]; 它有效
20 2024-04-04
编程技术问答社区
自动布局调整UIButton与文本的大小,然后是容器视图
我正在加载带有XIB文件的按钮的视图. 按钮(绿色)具有局部变量文本.我需要用文本动态调整UIBUTTON,然后将容器视图(红色)调整到按钮大小,以使容器视图没有额外的空间. 由于整个容器视图在具有清晰背景的视图中应水平中间,并且文本看起来不像左右对齐.我添加了背景颜色以清楚地标记:) 是否可以使用Xcode自动布局进行操作? 注意: 我发现如果我使用 view.translatesAutoresizingMaskIntoConstraints = YES; 然后按钮与文本以及超级视图/容器视图一起调整.但是,我无法将框架设置为所需的位置,无论我设置如何,它的原点总是(0,0).也许这是混合布局引擎的限制. 解决方案 我的最终解决方案变为 UIButton *sbt = [UIButton buttonWithType:UIButtonTypeCustom]; [sbt setImage: [UIImage imageNamed:@"cog
12 2024-03-21
编程技术问答社区
关闭 "使用自动布局 "导致应用程序只能在纵向模式下运行
我希望我的应用与iOS 5兼容,因此我必须在XIB文件中禁用"使用autoLayout".整个应用程序旨在以景观模式运行.在禁用AutoLayout(无论是在iOS 5还是iOS 6中)之后启动该应用程序时,该应用程序始终以肖像模式启动并拒绝旋转到景观. 在info.plist中,Supported Interface Orientations (iPad)仅设置为景观.我究竟做错了什么?这仅在禁用自动层后才发生. 解决方案 我能够通过使用Ismael的答案来解决iOS 6中的问题. - (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskLandscape; } 我能够使用以下代码在iOS 5中修复它. -(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)
8 2024-03-21
编程技术问答社区
Xcod--xib和自动布局的奇怪问题(xib扩展到随机高度)。
我在XIB文件/类问题上有一个奇怪的自动布局. 我在使用XIB文件的Swift中创建了一个自定义通知视图(UIVIEW子类). 当设备以肖像为导向时,通知 很好. 当我旋转到景观时,通知再次很好(但是, 按钮互动以某种方式被禁用/无反应) 当我旋转回到肖像方向时,xib视图(即 "自我")扩展到随机高度(请注意"黄色" 背景,由: self.backgroundColor = uicolor.yellowcolor() 我代码中的任何内容都没有设置框架或约束,之后添加到视图控制器中.我已经调整了我可以想到的XIB文件中的每个自动布局约束,并继续遇到此问题. 这里有一些屏幕截图: 解决方案 确定解决了. 因此,问题是,您无法在IB中从XIB到外部UiviewController中的自动布局引用设置(因为他们彼此不认识,直到您将XIB添加为子视图).因此,您必须以编程方式创建约束. 这就是我的做法: // Manual constraints
12 2024-03-21
编程技术问答社区
iOS 6.0自动布局的约束问题:旋转时子视图消失
嗨,我已经使用autoLayout约束设计了一个XIB,以显示两个行按钮,每行三个按钮,如屏幕截图所示(我将按钮在我获得令人满意的布局后将按钮放在红色Uiviews中): 在 到目前为止,在肖像模式下,如上图所示,按钮看起来不错.但是,当我旋转到横向景观时(以蓝色)和父视图(以灰色为单位)进行调整并正确显示,但是红色按钮视图刚刚消失(请参见下文). 设定这种情况以使其正常工作的最佳方法是什么?我遵循了Ray Wenderlich教程,并使用了相同的编辑器\ pin]垂直间距和编辑器\ PIN \ pin \ horizo​​ntal间距,他在他的示例中使用了: 我还会遇到很多约束错误,例如: Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to
12 2024-03-21
编程技术问答社区
如何计算从具有自动布局长宽比约束的xib加载的UICollectionViewCell的大小?
i有一个UicollectionViewCell,它是从XIB加载并存储在属性中的,以帮助计算我的收集视图的单元格大小.收集视图总是只有一列,因此,基于用户的手机,单元格在其宽度上有所不同(iPhone 5/6/6+). XIB具有一个图像视图,其纵横比必须保持所有手机尺寸的恒定. 我遇到的问题来自此配置.我似乎无法根据固定宽度以我想要的方式使单元大小.我的sizeForItemAtIndexPath:方法看起来像这样: - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { self.sizingCell.frame.size.width = self.flowLayout.fullViewSect
8 2024-03-21
编程技术问答社区
iOS。自动布局与自动调整大小Mask-resizing整个视图的大小来填充?
我有一个故事板,该故事板是使用自动布局构建的.在该故事板中,我将UIViewController子类(ButtonGridViewController)嵌入几个位置,每个位置都是不同的大小. ButtonGridViewController的视图在xib中定义. 我需要的是整个ButtonGridViewController的观点,即可简单地缩放我嵌入的视图.使用旧的支撑杆和弹簧方法,这是微不足道的 - 只是设置所有在两个方向上调整大小的子视图,瞧,饼. 如何使用约束来完成相同的事情?就其价值而言,XIB仅包含一个主视图,该视图是矩形,并且具有4个子视图 - 每个按钮 - 在2x2网格中排列.我希望所有内容,包括按钮和间距,都可以扩展和/或伸展以填充它进入的视图. 谢谢! 解决方案 要使用您需要将领先,尾随,顶部和底部空间设置为Supperiew的约束来完成相同的事情,请参见下文: //load the ButtonGridViewController f
10 2024-03-21
编程技术问答社区
在xib中为 "主视图 "添加约束条件
i在.xib文件中定义了UIView.我需要设置translatesAutoresizingMaskIntoConstraints = NO.这意味着框架没有转化为约束,因此我需要自己设置大小约束. 我为UIView创建了一个工作类别方法: -(NSArray*)setSizeConstraints:(CGSize)size { NSLayoutConstraint* height = [NSLayoutConstraint constraintWithItem:self attribute:NSLayoutAttributeHeight relatedBy:0 toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:size.height]; NSLayoutConstraint* width = [NSLayoutConstraint constraintWit
14 2024-03-21
编程技术问答社区
iOS7 XIB问题。顶部和底部的空白空间
我有一个我正在设置ImageView的视图.检查自动布局.它在预览中看起来不错,但是当应用在模拟器上实际运行时,顶部和底部都有空白空间显示在iPhone Retina 4英寸模拟器中.在3.5英寸上,它看起来不错.使用ios7和xcode 5. 即使我从视图中删除了图像,但仍然存在相同的问题. 这个空白的原因是什么? 解决方案 我想您忘记添加splash屏幕 default-568h@2x.png 在您的项目中,请检查属性并设置所需的Splash-Screen default-default-568H@2x .png (640×1136像素)和清洁项目并再次运行
22 2024-03-21
编程技术问答社区
将所有的子视图移到容器视图中,保持位置和约束。
我在项目中使用Xcode 5和AutoLayout.我有一个.xib文件,它们之间有很多子视图和约束.现在,我需要创建一个中间的全屏容器视图,并将所有子视图放在此处.所以现在我有view->subviews,我想要view->container view->subviews.当我在IB中通过将子视图拖动到容器视图中时,它们都被居中了,所有约束都会丢失.手动恢复所有约束将有点困难.是否有一种明智的方法可以使所有子视图的位置和约束? 解决方案 将您的容器视图添加到接口构建器中的层次结构(获取对象ID)并关闭视图.在文本编辑器中手动编辑.xib文件,然后将所有子视图移动到容器视图下.约束是在IB中创建的,并引用了IB对象ID,因此您必须替换用容器引用Supperiew的约束;快速替换运行就足够了. 其他解决方案 您可以在Xcode 6中使用切割和粘贴到单独的视图(以后可以将其拖动到实际需要的任何地方). ).
8 2024-03-21
编程技术问答社区
如何在iOS中用StackView视图从XIB中自定大小的自定义视图
我最近再次开始与Swift一起研究iOS开发,现在正在研究自定义的UIControl.对于布局和灵活性,此自定义视图是使用stackView构建的. 我想实现的目标... ...基本上就是简单地具有相同的功能,即与我通常将其直接拖动到情节板中时通常具有的stackView - 它的调整大小以适合任何问题.这基本上与自动尺寸的表观视频单元格. 展示柜 我可以将我的自定义视图简化为一个简单的示例:这是一个带有三个标签的stackView,Alignment设置为Center,Distribution Distribution Equal Centering. StackView将被固定在左,右和顶部布局指南(或落后,领先和顶部).我可以轻松地使用customview重新创建,从XIB加载到具有相同参数的自定义视图 - 我同时将其作为屏幕截图. 简单stackview的屏幕截图 CustomView的屏幕截图 加载XIB文件并设置. import
18 2024-03-21
编程技术问答社区
UIImageView/UIView的自动布局纵横比
如何为uiimageview/uiview设置自动层,以使图像视图宽度和高度增加了iPhone 6和6 plus的增加.我尝试添加约束纵横比,但高度和宽度的增加非常大.无论如何,是否可以为iPhone 6和6 Plus手动设置图像视图的约束高度和宽度.查看屏幕截图iPhone 6和6 Plus中的图像视图应该比现在显示的要小一点. 解决方案 我了解您的问题是您要控制每个不同屏幕大小中的图像将增加多少.您可以控制一切.您需要做的是在图像上分配平等的宽度约束.在图像的宽度上最好.关系将与Supperiew有关,然后您可以通过添加自己的乘数来更改关系. 您需要准确地做什么: 1)选择您的图像视图. 2)按住控制键.握住它时,将鼠标从图像视图拖到外视图. 3)选择"等于宽度". 4)双击"约束"选项卡中的约束. 5)确保将图像视图显示为第一项,如果没有单击第一个项目,然后选择"反向第一和第二项". 6)播放乘数,直到您对预览屏幕上的结果感到满意.
16 2024-03-21
编程技术问答社区
在storyboard中重复使用uiview的xib
我通常喜欢在接口构建器中创建和设计我的Uiviews.有时我需要在XIB中创建一个单个视图,该视图可以在故事板中的多个视图控制器中重复使用. 解决方案 在情节提要中重复使用并渲染XIB. 用Swift 2.2&Xcode 7.3.1 测试 1 ----创建一个名为'DistainableXibView' 的新Uiview 文件>新>文件>源>可可触摸类> uiview 2 ----创建一个名为" DistainableXibView"' 的匹配XIB文件 文件>新>文件>用户界面>查看 3 ----设置XIB 的文件所有者 选择xib 选择文件的所有者 将自定义类设置为身份检查器中的" DesignableXibView". 注意:请勿在XIB上设置视图的自定义类.只有文件所有者! 4 ---- DesignableXibView的实现 // DesignableXibView.swift import UIKit @
12 2024-03-20
编程技术问答社区
如何用XIB制作一个自定义的MKAnnotationView
我想拥有一个自定义的mkannotationView.我在IB中创建了一个XIB文件,并将其类设置为MyannotationView. class MyAnnotationView: MKAnnotationView { override init(annotation: MKAnnotation?, reuseIdentifier: String?) { super.init(annotation: annotation, reuseIdentifier: reuseIdentifier) } required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } @IBOutlet weak var textLabel: UILabel! @IBOutlet weak
20 2024-02-26
编程技术问答社区
如果未采用XIB,则如何使视图控制器与iPhone 5兼容
如果未使用XIB文件,则如何使视图控制器与iPhone 5兼容.是否可以通过编程方式进行更改. 预先感谢. 解决方案 是的,您可以做到这一点. XIB也只是文件,只是在文本编辑器中打开一个 - 您会看到它由可读的XML代码组成.现在,要使ViewController与iPhone 5兼容,请放置是否有条件,并通过检查特定设备的高度分别为不同的设备制作东西 但是挑剔的工作将是漫长的工作 对于我的通用应用程序,外汇应用程序,我只是使用屏幕高度检测概念: CGSize screenSize = [[UIScreen mainScreen] bounds].size; if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { if (screenSize.height > 480.0f) { /*Do iPhone 5 stuff here.*/ } else {
12 2023-12-20
编程技术问答社区
当Xib包含NSSCrollView时,它的加载会崩溃
我注意到如果我: ,我的应用程序会崩溃 使用nswindow的自定义Swift类 在窗口上添加nsscrollview 运行一个特定的目标(我在这个项目中还有2个,并且两个在相同条件下都可以正常工作) 呼叫的代码看起来像: guard let alertWindow = alert.window else {//It crashes here //other code return false } 类实施是空的.只是Nswindow子类(如果我使用NSWINDOW,一切都可以) class CustomAlertWindow: NSWindow { } 它可以使用一个空的Objective-C子类 @interface CustomAlertWindow: NSWindow @end @implementation CustomAlertWindow @end 有人面临这种​​崩溃.看起来它试图订阅NSSCrollVie
14 2023-12-20
编程技术问答社区
Xcode 4中的出口连接异常
我在Xcode 4中创建了一个新的iPhone项目,并从Xcode 3中创建的旧项目中添加了一些文件(XIB和类),该项目正常. 该项目可以罚款,没有任何错误或警告.但是,当我尝试运行它时,我会臭名昭著 " nsunknownykeyexception原因:类不是关键dateoutlet的键值编码符合键值"错误. 当我打开XIB文件时,与dateOutlet的连接似乎还不错,但是无论如何我都删除并重新连接以确保安全.下次我运行它时,我会遇到相同的错误,但是在另一个插座上,我认为连接出现了出现问题,我只需要再次重新连接它们即可.但是,我注意到有时候,当我重新连接一个插座时,它将在我已经``fixed''的插座上失败.经过大量的摆弄之后,我得出的结论是,重新连接并没有解决任何问题,只是当我对Xib进行更改时,下一个失败的出口将是随机选择的(或者至少看起来至少是这样). > 有人遇到了这个问题吗?我已经搜索了很多东西,但是似乎没有人遇到这种确切的行为.我试图在3台不同的机器
40 2023-12-20
编程技术问答社区
带有错误的简单应用程序"此类不是密钥的键值编码符合键值"
我使用XIB文件创建一个简单的iPhone应用程序,然后在视图中添加一个按钮.创建一个与之连接的IBOUTLET.每次我启动它,它都会崩溃.完整错误消息如下: 2014-05-03 08:10:19.742测试[1435:A0B] 'nsunknownykeyexception',原因:'[setValue:forundefinedkey:]:此类不对于键txtbtn符合密钥值编码.' 回顾了答案后,有很多人打了这个问题,我认为我的问题与众不同. 代码如下. #import @interface XIBViewController : UIViewController { UIButton *txtBtn; } @property (nonatomic, retain) IBOutlet UIButton *txtBtn; @end 创建此视图控制器的来源: - (BOOL)application:(UIApplicati
20 2023-12-20
编程技术问答社区