小编NSA*_*ict的帖子

目标c访问公共方法

我尝试从另一个类访问公共方法.我已经尝试了很多我在网络上找到的例子,但它们并没有按照我希望的方式工作.

Class1.h

@interface anything : NSObject {

    IBOutlet NSTextField *label;

}

+ (void) setLabel:(NSString *)string;
- (void) changeLabel:(NSString *)string2;
Run Code Online (Sandbox Code Playgroud)

Class1.m

+ (void) setLabel:(NSString *)string {

    Class1 *myClass1 = [[Class1 alloc] init];

    [myClass1 changeLabel:string];
    NSLog(@"setLabel called with string: %@", string);

}

- (void) changeLabel:(NSString *)string2 {

    [label setStringValue:string2];
    NSLog(@"changeLabel called with string: %@", string2);
}
Run Code Online (Sandbox Code Playgroud)

Class2.m

- (IBAction)buttonPressed {

    [Class1 setLabel:@"Test"];

}
Run Code Online (Sandbox Code Playgroud)

非常奇怪的是,在NSLogs中,一切都很好,在两个NSLog中,字符串都是"Test",但textField的stringValue不会改变!

cocoa objective-c nstextfield public-method

7
推荐指数
2
解决办法
2万
查看次数

获取NSTableView中内容的高度

有没有一种方法可以获取内容的高度NSTableView。在iOS中,您可以使用的-contentSize方法UIScrollView。但是,的-contentSize方法NSScrollView似乎只返回的可见部分的高度NSScrollView,而不包括屏幕外的内容。

那么,如何在Mac上完成呢?

macos cocoa objective-c nstableview nsscrollview

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

静态方法很慢

我正在用java编写一个简单的游戏.我用30 FPS进行了碰撞测试,我必须得到窗口的大小.因为我还没有访问GUI实例,所以我认为我会创建一个共享实例,因为这在Objective-C中非常标准,我来自这里.

class GUI extends JFrame {
    private static GUI _sharedInstance;

    public static GUI sharedInstance() {
        if (_sharedInstance == null) {
            _sharedInstance = new GUI();
        }
        return _sharedInstance;
    }
}
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,它真的很慢.然后我用public static final大小的实例替换了共享实例,它现在可以快速工作,即使是60 FPS或更高.

谁能解释我为什么会这样?

编辑

所以不是打电话GUI.sharedInstance().getWidth(),而是打电话GUI.windowSize.width.我用过了public static final Dimension windowSize.

编辑

这是碰撞检测.所以,int width = GUI.kWindowWidth;我没有打电话,而是在打电话int width = GUI.sharedInstance().getWidth();.

// Appears on other side
if (kAppearsOnOtherSide) {
    int width = GUI.kWindowWidth;
    int height = GUI.kWindowHeight;

    // Slow
    // …
Run Code Online (Sandbox Code Playgroud)

java performance

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

在Finder中显示不在10.8中工作

这适用于10.7但不是10.8.我如何在Mountain Lion中使用它?

-(IBAction)showTargetInFinder:(id)sender
{

     NSString *linkPath = [targetField stringValue];
     NSWorkspace *ws = [NSWorkspace sharedWorkspace];
     [ws selectFile:linkPath inFileViewerRootedAtPath:nil];

}
Run Code Online (Sandbox Code Playgroud)

cocoa nsworkspace

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

无法正确编码签名帮助应用程序

我正在尝试编写签名我的帮助应用程序.

我为它创建了一个单独的配置文件,它是有效的并且有效.我可以存档并导出它用于Mac App Store提交.

但是,当我运行主应用程序并将辅助程序添加为守护程序时,帮助程序应用程序开始运行,但它无法正常运行.它什么都没做......

当我禁用代码签名并离开沙箱检查帮助应用程序工作.

我也得到了一堆日志:


记录1

xpcd[236]: 
(null): have symlinks: (
)
Run Code Online (Sandbox Code Playgroud)

记录2

Not allowing process xxxx to launch "/Path/App.app/Contents/Library/LoginItems/Helper.app" because it has not been launched previously by the user
Run Code Online (Sandbox Code Playgroud)

记录3

Not allowing process xxxx to register app "Path/App.app/Contents/Library/LoginItems/Helper.app" for launch.
Run Code Online (Sandbox Code Playgroud)

记录4

<rdar://problem/11489077> A sandboxed application with pid xxxx, "Helper" checked in with appleeventsd, but its code signature could not be validated ( either because it was corrupt, or could not be read by appleeventsd ) and so …
Run Code Online (Sandbox Code Playgroud)

macos cocoa objective-c

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

我的结构何时太大?

我们鼓励在 Swift 中使用structover class

这是因为

  1. 编译器可以做很多优化
  2. 实例是在堆栈上创建的,这比malloc/free调用性能要高得多

变量的缺点struct是每次从函数返回或分配给函数时都会复制它们。显然,这也可能成为瓶颈。

例如,想象一个 4x4 矩阵。每次分配/返回时都必须复制 16 个浮点值,在 64 位系统上这将是 1'024 位。

避免这种情况的一种方法是inout在将变量传递给函数时使用,这基本上是 Swift 创建指针的方法。但我们也不鼓励使用inout.

所以我的问题是:
我应该如何在 Swift 中处理大型、不可变的数据结构?
我是否需要担心创建一个struct包含许多成员的大型项目?
如果是的话,我什么时候越界?

struct class heap-memory stack-memory swift

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

覆盖PHP中的静态方法

我有一个像这样的抽象页面类:

abstract class Page {
    public static function display() {
        self::displayHeader();
        self::displayContent();
        self::displayFooter();
    }

    public static function displayContent() {
        print "<p>some content</p>";
    }

    public static function displayHeader() {
        include_once(kContent . "HeaderContent.class.php");
        HeaderContent::display();
    }

    public static function displayFooter() {
        include_once(kContent . "FooterContent.class.php");
        FooterContent::display();
    }
};
Run Code Online (Sandbox Code Playgroud)

我想从此子类化,并且只覆盖displayContent方法,因此页眉和页脚会自动显示,但仍然可以选择覆盖显示方法,例如.js文件.

现在我有另一个类,看起来像这样:

class FooPage extends Page {
    public static function displayContent() {
        print "<p>Foo page</p>";    
};
Run Code Online (Sandbox Code Playgroud)

现在,它不是调用FooPage的displayContent方法,而是从超类中调用它.

为什么?我能做什么?

编辑

我正在运行PHP 5.2.17

php static overriding

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

无法在我执行popViewControllerAnimated时显示导航栏

我有两个viewControllers,我正在从FirstView导航到SecondView

将SecondView推送到导航控制器.因为我不想要导航栏

要在SecondView中显示,我会执行以下操作

self.navigationController.navigationBar.hidden=YES;
Run Code Online (Sandbox Code Playgroud)

然后我从secondView返回到FirstView,如下所示

[self.navigationController popViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)

但是现在导航栏也没有显示在FirstView中,因为我将它隐藏在

SecondView.我在FirstView中尝试以下内容

-(void)viewWillAppear:(BOOL)animated
{

       [super viewWillAppear:YES];

       self.navigationController.navigationBar.hidden=NO;
}
Run Code Online (Sandbox Code Playgroud)

cocoa-touch objective-c uinavigationcontroller ios

5
推荐指数
2
解决办法
3604
查看次数

在monotouch中构建静态库

是否可以使用可由Xcode开发人员使用的MonoTouch构建静态库?标题怎么样?

我来自C#背景,我有一个大型库可以移植到iOS.

如果我可以将它保存在C#中并根据需要进行调整,它可以节省大量时间.

objective-c xamarin.ios

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

我怎样画出弯曲的阴影?

像这样:

在此输入图像描述

我知道这不会起作用NSShadow,把它拉进去drawRect:会很好用.

iphone macos cocoa objective-c drawrect

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