有人可以透露 IB 中的秘密握手以允许 UIView 子视图超出其父级超级视图的范围吗?
干杯,道格
在我的 iOS 应用程序中,我遇到了一个问题,有一个带有图像的按钮,我想为图像下的按钮设置一个渐变,我编写了以下代码:
- (void)viewDidLoad {
[super viewDidLoad];
CAGradientLayer *gradient = [GradientColor btnGreyGradient];
[gradient setFrame:self.btnTicketView.layer.bounds];
gradient.masksToBounds = YES;
[self.btnTicketView.layer insertSublayer:gradient atIndex:0];
self.btnTicketView.clipsToBounds = YES;
}
Run Code Online (Sandbox Code Playgroud)
我的 GradientColor 类是:
#import "GradientColor.h"
@implementation GradientColor
+(CAGradientLayer *)btnGreyGradient
{
UIColor *startColor = [UIColor colorWithRed:169.0/255.0 green:169.0/255.0 blue:169.0/255.0 alpha:1.0];
UIColor *endColor = [UIColor colorWithRed:128.0/255.0 green:128.0/255.0 blue:128.0/255.0 alpha:1.0];
NSArray *arrayColors = [NSArray arrayWithObjects:(id) startColor.CGColor, endColor.CGColor, nil];
CAGradientLayer *viewGradient = [CAGradientLayer layer];
viewGradient.colors = arrayColors;
return viewGradient;
}
Run Code Online (Sandbox Code Playgroud)
问题是当我为我的按钮设置渐变时,我在 InterfaceBuilder 中设置的图像被覆盖了。我该如何解决这个问题??谢谢你
我花了很长时间试图弄清楚这个问题:
我有一个UITableViewCell固定大小UIImage(250 x 250) 固定在单元格顶部View和一个UILabel可变文本大小的底部,其顶部固定在底部,底部固定UIImage在单元格的底部View。
我有一个用例,其中图像并不总是得到保证,因此图像视图故意折叠到0高度,因此它不会破坏UILabel顶部固定的自动布局。
我认为这将允许UITableViewCell缩小到标签的大小,但相反,它保持默认高度,自动布局会拉伸标签的高度(以保持顶部和底部的固定),文本居中居中。
我用所有常见的犯罪嫌疑人,UITAbleViewAutomaticDimension以及estimatedRowHeight等等等等(你可能会认为第一!),它是无济于事。
我究竟做错了什么?
我确实看到了一些关于将IB 中约束的优先级更改为250而不是1000这样它们可能会中断的内容。而且还调整了一些参考UITableViewCell通过调用手动(跛脚和肮脏)requiredHeight()的UILabel这打破了布局,所以我在做什么错在这里?谢谢!
我们可以选择通过选择UIView和更新所有帧动作来修复所有警告,但我没有tableViewController在storyboard. 有什么办法可以自动修复吗?
我正在尝试在我的应用程序 UI 中放置一个 UISearchController。布局是:
我想将 UISearchController 的 UISearchView 放在黑色容器中。
我的代码如下:
self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsViewController];
UISearchBar* searchBar = self.searchController.searchBar;
searchBar.frame =_searchBarContainer.bounds;
[_searchBarContainer addSubview:searchBar];
[_searchBarContainer layoutIfNeeded];
Run Code Online (Sandbox Code Playgroud)
它将 UISearchBar 放置在正确的位置:
但是当我选择搜索字段时,它会将栏扩展到容器的边界上:
如何解决这个问题并避免选择时的尺寸/外观变化?
注意:尝试了一些使用translatesAutoresizingMaskIntoConstraints和 的 clipToBounds选项,但没有成功。我不是 iOS UI 的专家,所以我希望得到准确的答案。谢谢
Xcode 自动更新,现在我的注册屏幕视图控制器显示在我转换到的当前视图控制器下方。查看屏幕截图我该如何解决这个问题?
如果我创建一个 segue 并使用 Interface Builder 选择当前模式,那么当我运行该应用程序时,我现在将在当前屏幕下方看到上一个屏幕。在更新之前这从来都不是问题。(我在整个应用程序中使用相同的背景,因此我的大多数视图控制器背景都设置为透明。)
另外,我认为这是相关的,当我在 Xcode 中查看故事板并将视图设置为使用 iPhone 8 Plus 时,它显示了一个以前不存在的浅灰色圆角矩形。查看故事板布局 当我运行应用程序时,我的大多数视图控制器现在都被限制为这种形状并且不再全屏。请参阅此处的示例 我的设置视图控制器使用白色背景,因此您可以更轻松地看到我在说什么。这个VC曾经是全屏的,没有向下移动并且在顶部圆角。有任何想法吗?
Xcode 11.1 针对 iOS 12.1
xcode interface-builder viewcontroller presentmodalviewcontroller segue
我目前正在开发一个将 iOS 13 设置为部署目标的 iOS 应用程序。我在整个应用程序中使用了一些 SF 符号。现在,由于 iOS 14 和新版本的 XCode 已经可用,我收到了关于我的一个符号被弃用的警告(paragraphsign应该使用而不是paragraph),但是,当我paragraphsign在 Interface Builder中将图像更改为收到一条错误消息,指出此符号仅在 iOS 14 中可用...
现在,我目前的解决方案是忽略警告,而是使用
if #available(iOS 14, *)
{
...
}
Run Code Online (Sandbox Code Playgroud)
在我的代码中用新版本替换所有已弃用的图像。
我的问题是:有没有办法直接在 Interface Builder 中执行此操作以避免警告?类似于“在 iOS 14 中使用它,而在以前的版本中使用它”?
我正在从iPhone开发中心探索NavBar示例.
更具体地说,我试图了解MainViewController对象的实例化位置,而我根本无法找到它发生的位置.
对MainViewController类的唯一引用是在AppDelegate中,其中有一个前向声明和#import.但是,删除这些句子不会影响程序.
该对象可能是在nib文件中创建的,但同样,我找不到它.
我非常喜欢Xcode开发环境.然而,我不喜欢的是,有许多不同的地方可以创建/连接对象,这使得很难理解其他人的代码.
任何帮助将不胜感激.
iphone model-view-controller xcode cocoa-touch interface-builder
一些Cocoa应用程序(例如,Mail和Automator)通常在窗口的底部有一个特殊的控件:
替代文字http://img150.imageshack.us/img150/9084/picture2vm3.png
您能否分享使用标准图像和弹出按钮制作相同操作栏的最佳做法?
谢谢.
我想使用日历实现日期选择器.在我开始尝试构建一个之前,有没有这样做呢?
我已经查看了Interface Builder中的日期选择器,据我所知,它几乎只是一个文本字段.通过开发人员文档查看(虽然很快),似乎有大量与日期相关的功能,但对界面的方式不是很多.所以,如果我继续建立自己的,那么最好的攻击线是什么
我已经使用jQuery为我正在开发的网站构建了我需要的HTML/CSS和Javascript,所以我最初的想法是我可以使用Web视图并显示它,假设有一些方法来检测里面发生的事件网络视图.但这对我来说感觉有点便宜.什么是推荐路线?
ios ×5
xcode ×4
cocoa ×2
objective-c ×2
cocoa-touch ×1
iphone ×1
menu ×1
segue ×1
sidebar ×1
storyboard ×1
subview ×1
swift ×1
uitableview ×1
uiview ×1
warnings ×1
webview ×1
xcode8 ×1