我UIView在界面构建器上有一个.在我的视图控制器中,我有一个IBOutlet MyUIView指向UIView界面构建器.
我将类更改UIView为" MyUIView"(自定义UIView类),但似乎没有init触发子类的任何方法.
我究竟做错了什么?
我有一个使用XCode 6构建的Cocoa Touch框架,目标是iOS> = iOS8.此框架的目标体系结构设置是默认设置,这意味着我没有更改任何内容.架构设置为标准(不包括x86_64,稍后将详细介绍).框架本身包含Swift和Objective-C代码,因此使用Ray Wenderlich的静态库解决方法构建它将不起作用.
现在,如果我创建一个新项目并将框架项目添加到它,该项目将为设备和模拟器构建,这很好.
但是,如果我将.framework文件添加到不同的项目中,就像添加任何其他框架一样,该项目将不会为模拟器构建.嗯,它确实构建,但它崩溃,因为它找不到相关的类.它在设备上运行良好,归档工作也正如预期的那样.
框架项目本身已经给了我一个警告; "Apple Mach-O链接器警告 - 找不到选项的目录....(Debug-ophoneos)".
任何帮助将非常感谢!
在我的一个iPhone项目中,我有三个视图可以通过触摸和拖动来移动.但是,我想通过使用两个手指阻止用户同时移动两个视图.因此,我试图尝试使用UIView.exclusiveTouch,但没有任何成功.
为了理解该属性的工作原理,我创建了一个全新的项目,在视图控制器中使用以下代码:
- (void)loadView {
self.view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
UIButton* a = [UIButton buttonWithType:UIButtonTypeInfoDark];
[a addTarget:self action:@selector(hej:) forControlEvents:UIControlEventTouchUpInside];
a.center = CGPointMake(50, 50);
a.multipleTouchEnabled = YES;
UIButton* b = [UIButton buttonWithType:UIButtonTypeInfoDark];
[b addTarget:self action:@selector(hej:) forControlEvents:UIControlEventTouchUpInside];
b.center = CGPointMake(200, 50);
b.multipleTouchEnabled = YES;
a.exclusiveTouch = YES;
[self.view addSubview:a];
[self.view addSubview:b];
}
- (void)hej:(id)sender
{
NSLog(@"hej: %@", sender);
}
Run Code Online (Sandbox Code Playgroud)
当运行它时,hej:在按下任何按钮时被不同的发送者调用 - 即使其中一个按钮设置为YES.我试过评论multipleTouchEnabled-lines,但没有用.有人可以向我解释我在这里失踪了吗?
谢谢,Eli
我的应用程序使用UITableView部分标题标题中的缩写,VoiceOver很难发音.由于我需要通过VoiceOver使这些标题可以发音,我需要给出标题标题a accessibilityLabel.
似乎这样做的唯一方法是绘制自定义节标题单元格.我想模仿标准Apple UIKit为这些自定义部分标题提供的样式,但我不确定如何模仿Apple的这个元素的详细外观.
模仿UITableViewStylePlain节标题样式的最佳方法是什么?
更新:我很清楚如何创建自定义标题单元格.我正在寻找的是一种技术,可以模仿Apple为普通UITableView部分标题单元格提供的标题单元格样式.
我有一个UICollectionView,我正在根据这个链接实现粘性标题:http://blog.radi.ws/post/32905838158/sticky-headers-for-uicollectionview-using #notes
它工作得非常好但是我的窗口应用了背景图像,我的标题视图具有透明背景.因此,当我的项目在标题视图上方滚动时,您仍然可以看到它们.
理想情况下,我会使用渐变淡出单元格,直到它在标题视图后面出现的时间不可见.
谢谢.
我想在视图中添加多个具有不同不透明度的阴影.阴影的规格如下:
我可以用CALayers 来完成所有这些工作.这是我为此工作的代码(请注意我还没有打扰设置shadowPath,直到我得到多个阴影的东西才会工作):
layer.cornerRadius = 4
layer.masksToBounds = false
layer.shouldRasterize = true
let layer2 = CALayer(layer: layer), layer3 = CALayer(layer: layer), layer4 = CALayer(layer: layer)
layer.shadowOffset = CGSizeMake(0, 4)
layer.shadowRadius = 1
layer2.shadowOffset = CGSizeMake(0, 10)
layer2.shadowRadius = 10
layer2.shadowColor = UIColor.blackColor().CGColor
layer2.shouldRasterize = true //Evidently not copied during initialization from self.layer
layer3.shadowOffset = CGSizeMake(0, 2)
layer3.shadowRadius = 4
layer3.shouldRasterize = true
layer4.shadowOffset = CGSizeMake(0, 1)
layer4.shadowRadius = 1
layer4.shadowOpacity = 0.1 …Run Code Online (Sandbox Code Playgroud) 我会有另外两种颜色的行,如第一个黑色,第二个白色,第三个黑色等等......
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
cell = ((MainCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]);
if (cell==nil) {
NSArray *topLevelObjects=[[NSBundle mainBundle] loadNibNamed:@"MainCell" owner:self options:nil];
for (id currentObject in topLevelObjects){
if ([currentObject isKindOfClass:[UITableViewCell class]]){
if ((indexPath.row % 2)==0) {
[cell.contentView setBackgroundColor:[UIColor purpleColor]];
}else{
[cell.contentView setBackgroundColor:[UIColor whiteColor]];
}
cell = (MainCell *) currentObject;
break;
}
}
}else {
AsyncImageView* oldImage = (AsyncImageView*)
[cell.contentView viewWithTag:999];
[oldImage removeFromSuperview];
}return cell;
Run Code Online (Sandbox Code Playgroud)
问题是,当我进行快速滚动时,细胞的背景变得像最后2个细胞黑色,前2个细胞白色或类似的东西,但如果我滚动慢工作正常.我认为问题是reusableCell的缓存.
有任何想法吗?
TIA
所以我有一个UITableViewController启动另一个tableVC,当解雇时改变原始的单元格数量.
解雇后,尽管返回正确的单元格高度(和标题高度)以及更新的行数(使滚动内容很大),滚动视图仅在滚动时反弹.在查看contentSize表格滚动的属性时,它contentSize是不正确的,并且与之前的相同.
最初加载原件时tableVC,我没有问题.如果我有大量单元格,表格将按预期滚动.只有在解雇所提出tableVC的问题时才会遇到问题.我不确定的一件事是什么时候调用reloadData.我这样做如下:
在提出中tableVC:
[[self presentingViewController] dismissViewControllerAnimated:YES completion:nil]
Run Code Online (Sandbox Code Playgroud)
2.在原始表VC中:
-(void)viewDidAppear
{
//tablecell number manipulated
[table reloadData];
}
Run Code Online (Sandbox Code Playgroud)
有趣的是,如果我旋转到横向并回到肖像,则contentSize然后设置正确,我可以再次滚动.
在iOS 7中,给定一个UICollectionView,你如何在底部启动它?想想iOS消息应用程序,当视图变得可见时,它始终从底部开始(最新消息).
根据apple关于widgetPerformUpdateWithCompletionHandler:的内容,当窗口小部件不可见时,iOs Widget也可以更新他的内容.
在我的调试会话中,我注意到每当通知中心视图消失时,todayViewController都会被释放,所以我的问题是:
如果取消分配,我的todayViewController如何响应widgetPerfomrUpdateWithComplationHandler?
我需要每小时小部件更新他的内容,如果它不可见,我该怎么做?
iOs小部件生命周期如何?
请帮帮我:)谢谢
cocoa-touch objective-c ios ios8-today-widget ios-extensions
cocoa-touch ×10
ios ×9
objective-c ×7
uikit ×5
uitableview ×3
uiview ×3
iphone ×2
cell ×1
dropshadow ×1
ios7 ×1
quartz-core ×1
xcode ×1