小编hol*_*lex的帖子

Xcode 6:创建新的Objective C文件搞砸了?

我有Xcode 6 beta 6,只是想在我的项目中添加一个新类.

现在,它是文件 - >新文件 - >目标-C文件,我必须在空文件,类别,协议和扩展之间进行选择.我只想创建一个新类(比如说HelloWorld),它继承自let NSObject.

通常,Xcode会创建.m文件并自动创建.h文件,但现在它只创建了.m名为NSObject_HelloWorld.m的文件.没有创建头文件,我也不希望使用Superclass_newClass命名方案.

我错过了什么?

xcode objective-c ios xcode6

17
推荐指数
1
解决办法
8270
查看次数

NSClassFromString()始终返回nil

nil尽管ListCell是有效的类,但仍打印以下代码.

var lCellClass : AnyClass! = NSClassFromString("ListCell");

println(lCellClass);
Run Code Online (Sandbox Code Playgroud)

文档说该方法返回

aClassName命名的类对象,或者nil当前没有加载该名称的类.如果aClassNamenil,则返回nil.

我也尝试获得NSClassFromString()当前的viewcontroller,它已经加载但仍然可以获得nil

可能是什么问题?

更新: 即使尝试这样做NSClassFromString("Array")我仍然得到nil

xcode ios ios7 xcode5 swift

16
推荐指数
2
解决办法
8482
查看次数

drawRect崩溃 - 是什么原因引起的?

我的一些用户正在遭遇这次崩溃.

据我所知,它以某种方式连接到-drawRect:我的子类的方法NSTextView,但我看不出可能导致它的原因,并且压力测试未能摆脱错误.

drawRect的代码

- (NSRange)visibleRangeOfTextView:(NSRect) rect {
    NSLayoutManager *layoutManager = [self
                                      layoutManager];
    NSTextContainer *textContainer = [self
                                      textContainer];
    NSRange glyphRange, characterRange;
    // first transform to text container coordinates
    NSPoint containerOrigin = [self textContainerOrigin];
    rect.origin.x -= containerOrigin.x;
    rect.origin.y -= containerOrigin.y;

    // next, compute glyph range
    glyphRange = [layoutManager glyphRangeForBoundingRect:rect inTextContainer:textContainer];

    // finally, compute character range
    characterRange = [layoutManager characterRangeForGlyphRange:glyphRange actualGlyphRange:NULL];
    return characterRange;
}

- (NSRect)rectForCharacterRange:(NSRange)charRange
{
    NSRect rect = [self
                   firstRectForCharacterRange:charRange];
    rect.origin = [[self window]
                   convertScreenToBase:rect.origin];
    rect = …
Run Code Online (Sandbox Code Playgroud)

macos objective-c

10
推荐指数
1
解决办法
1236
查看次数

我可以在superView中的特定点获取子视图吗?

我想要的是类似的东西

-(UIView*) fromPoint: (CGPoint) point inView:(UIView*) superView
Run Code Online (Sandbox Code Playgroud)

这样的事情已经出现了吗?我想要它,以便我可以成功地交换任何两个UIImageView中的内容,如果一个被拖放到另一个上.

一种方法是检查所有子视图是否包含提供的点.还有其他方法吗?

谢谢.

objective-c uiview uiimageview ios

5
推荐指数
1
解决办法
3869
查看次数

Swift Array加入EXC_BAD_ACCESS

数组–join(_:)函数抛出EXC_BAD_ACCESS.

var ar1 = [1,2,3]
var ar2 = [5,6,7]
var res = ar1.join(ar2)
Run Code Online (Sandbox Code Playgroud)

有人遇到过这个问题吗?任何解决方案或建议?

在此输入图像描述

arrays join swift

5
推荐指数
1
解决办法
1216
查看次数

Xcode6 beta4的问题

我正在Swift的Xcode6 beta 4中开展一个项目.但是我在这个项目上遇到了很多问题,这个问题在Xcode6 beta 3中运行良好:

在早于7.0的iOS上,Swift不可用;

我记得Swift应该适用于iOS 6.0及以上版本.为什么突然改为iOS 7.0?

"ViewController"类没有初始化程序

'IBOutlet'属性具有非可选类型'UILabel'

所以我必须将我的代码更改为:

@IBOutlet weak var label: UILabel!
Run Code Online (Sandbox Code Playgroud)

它会在下一个版本中再次更改吗?

另一个问题是:

'CGColorSpaceModel'没有名为'value'的成员

我的代码是:

var colorSpaceModel : CGColorSpaceModel
{
    return CGColorSpaceGetModel(CGColorGetColorSpace(self.CGColor))
}


if self.colorSpaceModel.value == kCGColorSpaceModelRGB.value || self.colorSpaceModel.value == kCGColorSpaceModelMonochrome.value {
Run Code Online (Sandbox Code Playgroud)

我不知道我现在该做什么.

xcode ios swift xcode6

5
推荐指数
1
解决办法
1627
查看次数

"hidden"vs #keyPath(UIView.isHidden)

KVO观察员#keyPath(UIView.isHidden)不起作用,但"hidden"工作.

很奇怪.是bug还是功能?

child.addObserver(self, forKeyPath: "hidden", options: [.initial,.new], context: nil);

override func observeValue(forKeyPath keyPath: String?, of object: Any?, .change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
    if let view = object as? UIView, view.superview === self && keyPath == "hidden" {
        print("*");
    }
}
Run Code Online (Sandbox Code Playgroud)

ios swift swift3

5
推荐指数
1
解决办法
1119
查看次数

如何在Swift中使用MarqueeLabel?

我想知道是否有一种方法可以启用文本的水平滚动,即字幕类型文本.我使用过这个库:https://github.com/cbpowell/MarqueeLabel-Swift并将"MarqueeLabel.Swift"文件添加到我的应用程序中.但到目前为止,它并没有显示出我想要的效果.

这是我实现它的方式:

class ViewController: UIViewController 
{
@IBOutlet weak var marqueeLabel: MarqueeLabel! 
override func viewDidLoad() {
    super.viewDidLoad()
        self.marqueeLabel.tag = 101
        self.marqueeLabel.type = .Continuous
        self.marqueeLabel.speed = .Duration(5)
        self.marqueeLabel.animationCurve = .EaseInOut
        self.marqueeLabel.fadeLength = 10.0
        self.marqueeLabel.leadingBuffer = 30.0
        self.marqueeLabel.trailingBuffer = 20.0
        self.marqueeLabel.restartLabel()
 }
}
Run Code Online (Sandbox Code Playgroud)

我根据" MarqueeLabel Swift not working "中的解决方案在界面构建器中设置了自定义类.它仍然无法正常工作.

我得到的只是一个没有选框效果(或水平文字滚动)的标签.

PS:我也是iOS开发的新手.此外,我在实现此库之前尝试使用UIScrollView和UITextView.我不能使用UIWebView,因为我试图在TVOS中实现它.

我的问题是:

  1. 我在哪里错误的代码?

  2. 有没有其他方法可以使用Swift显示选框效果?

提前致谢.

xcode marquee ios swift tvos

4
推荐指数
3
解决办法
1万
查看次数

无法分配iOS MFMailComposeViewController

我下载了一个使用的示例项目,MFMailComposeViewController需求是框架MessageUI,并设置了MFMailComposeViewControllerDelegate.

但是当通过代码时

MFMailComposeViewController *mailController = [[MFMailComposeViewController alloc] init];
mailController.mailComposeDelegate = self;
Run Code Online (Sandbox Code Playgroud)

mailController没有得到一个有效的地址0x0,这意味着它不分配内存.我不知道它不能分配.我查看了示例代码并正确分配了它.

有什么不同?为什么不能分配?

sendmail objective-c ios

1
推荐指数
1
解决办法
139
查看次数

视网膜显示的直径大小?

我只是想知道我的图像是否有x*y尺寸.

当视网膜显示设备显示用a创建的图像时CGRectMake(0,0,x,y),这会是像素化图像吗?

应该是正确的尺寸CGRectMake(0,0,x/2,y/2)吗?

如何判断图像应该具有的矩形大小?

我需要使用contentScaleFactor = [UIScreen mainScreen].scale;吗?

要不就是由它作为划分CGRectMake(0,0,x/contentScaleFactor,y/contentScaleFactor)

xcode objective-c ios retina-display

0
推荐指数
1
解决办法
1200
查看次数