小编Rap*_*ert的帖子

NSCursor:使用带有光标变焦(或视网膜)的高分辨率光标

在OSX中,用户可以使用辅助功能系统首选项缩放鼠标光标.由于Lion(我认为)OSX将游标存储为PDF并且能够平滑地调整它们的大小.我希望我的应用程序具有相同的功能,但使用PDF作为NSImage我的用途NSCursor只是在设置了大于1.0的光标缩放级别时缩放渲染的位图.

我如何能:

  • 为我的光标使用矢量图稿并让它们像系统光标一样正确缩放?
  • 检测当前光标缩放级别.
  • 光标缩放级别更改时收到通知?

此外,当我的屏幕使用HiDPI模式并恢复光标缩放设置时,PDF光标也会模糊,那么你们究竟如何视网膜 - 你的光标呢?

macos cocoa cursor nscursor

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

UITableViewCell自定义重新排序控件

有没有办法更改UITableView处于编辑模式时显示的重新排序控件的图像?我有一个UIImage,我想显示而不是通常的灰色条.

我是否必须继承UITableViewCell才能完成此任务?

iphone cocoa-touch uitableview ios4

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

在JSON.NET中将NaN值序列化为JSON作为空值

大多数Json解析器不会序列化NaN,因为在Javascript中,NaN不是常量.但是,Json.Net确实将NaN值序列化为NaN,这意味着它输出无效的Json; 试图反序列化这个Json将失败大多数解析器.(我们在WebKit中进行反序列化.)

我们已经攻击了Json.Net代码,在传递NaN时输出空值,但这似乎是一个糟糕的解决方案.Douglas Crockford(曾经)建议使用空值代替NaN:

http://www.json.org/json.ppt (见幻灯片16)

显然,这并不适用于所有情况,但它可以用于我们的目的.我们只是不必修改Json.Net的源代码.有谁知道如何使用Json.Net将NaN输入转换为空输出?

.net serialization json nan json.net

8
推荐指数
3
解决办法
5743
查看次数

在UIViewController的viewDidUnload中发布IBOutlets?

我对基于Nib的UIViewControllers中发生的事情感到有点困惑.生成UIViewController子类时,模板在viewDidUnload方法中包含非常具体的注释:

// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
Run Code Online (Sandbox Code Playgroud)

这适用于哪些子视图?

  • 那些我初始化的viewDidLoad?(我会说是的)
  • 那些我初始化的initWithNibName?(我会说不)
  • 引用笔尖中的对象的IBOutlets?

如果我像这样使用视图控制器:

MyViewController *controller = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
[self.navigationController pushViewController:controller animated:YES];
[controller release];
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想这没有多大关系是否持有到子视图引用实例变量被释放viewDidUnloaddealloc因为dealloc应该得到尽快视图控制器从堆栈中弹出,所以我还不如做苹果所谓的说,释放实例变量viewDidUnload而不是dealloc.

但是假设我用作MyViewController可以多次推送的实例变量:

if(self.myViewController == nil) {
    self.myViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
}
//Change some state which should be reflected in the view
self.myViewController.someProperty = someValue; …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiviewcontroller nib ios

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

在JSP中,有没有办法在PHP中查看特定范围内的所有可用变量?

或者更好的是如何在jsp中转储给定范围内的所有变量?

(在php中,您可以使用函数调用来查看所有可用的系统,全局和用户定义的变量和函数...)

jsp jstl

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

将框架链接到QuickLook插件

我正在尝试编写QuickLook生成器.为此,我需要链接到我创建的框架.但是,一旦我链接到所述框架,qlmanage拒绝加载我的插件告诉我:

[ERROR] Can't load plug-in at /path/to/my-ql.qlgenerator: The bundle “my-ql” couldn’t be loaded because it is damaged or missing necessary resources.
Run Code Online (Sandbox Code Playgroud)

我已阅读有关Linking,Frameworks和QuickLook的所有相关教程,但未找到答案.

到目前为止我发现/排除的事情

  • 架构:当将Framework包含为32位二进制时,整个链接过程都会出错,所以这似乎不是问题所在.
  • 我已经验证框架被复制到插件的包中Contents/Frameworks.
  • 框架的安装路径设置为 @executable_path/../Frameworks

此外,在其他应用程序中使用该框架时,一切顺利.我可以理解的唯一可能的解释如下:执行时qlmanage,@executable_path实际指向该二进制文件,因此我的框架永远找不到.如果是这种情况,我如何设置安装路径仍然允许相对于插件的位置?我不想在全球范围内安装我的框架.

编辑

otool -L 在内置的QuickLook插件上产生以下内容:

/System/Library/Frameworks/QuickLook.framework/Versions/A/QuickLook (compatibility version 1.0.0, current version 327.4.0)
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 38.0.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.29.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0)
@executable_path/../Frameworks/PESHandler.framework/Versions/A/PESHandler (compatibility version 1.0.0, current …
Run Code Online (Sandbox Code Playgroud)

cocoa frameworks objective-c dynamic-linking quicklook

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

在git中显示未提交的合并的父项

如何在git中看到未提交的合并的父级?我可以通过这样做看到一个父母,git log -1但我怎么看到另一个父母?

这在Mercurial中很容易做到:

$ hg parents
changeset:   2:b65656dbfff6
tag:         tip
parent:      0:1806d848df54
user:        Stephen Rasku 
date:        Tue Nov 27 10:14:31 2012 -0800
summary:     c

changeset:   1:9aaa22944f41
user:        Stephen Rasku 
date:        Tue Nov 27 10:14:01 2012 -0800
summary:     b
Run Code Online (Sandbox Code Playgroud)

在git中有什么相同的东西吗?我知道你可以在git中看到一个已提交合并的父母.这是专门为了看到未提交合并的父母.

git

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

为什么eol = crlf在.gitattributes中不被认可

因此,我决定在git repo中将所有具有Windows样式的行尾的文件转换为具有Unix样式的行尾。

我按照http://www.git-scm.com/docs/gitattributes#_end_of_line_conversion的说明进行操作:

echo "* text=auto" >>.gitattributes
rm .git/index     # Remove the index to force Git to
git reset         # re-scan the working directory
git status        # Show files that will be normalized
git add -u
git add .gitattributes
git commit -m "Introduce end-of-line normalization"
Run Code Online (Sandbox Code Playgroud)

后来我意识到,这也更改了* .bat文件,这些文件应保持为CRLF。我使用以下.gitattributes文件再次尝试了整个过程:

# Default 
*         text=auto eol=lf

# Windows-only files
*.bat     text eol=crlf
Run Code Online (Sandbox Code Playgroud)

这似乎并没有改变的输出git status,尽管批处理文件在我的工作副本中为CRLF,但仍被标记为“已更改”,.gitattributes并将其设置为完全相同。似乎git只会忽略与*.batgit show --raw还向我展示了文件现在是用LF而不是CRLF存储的。

git

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

声明一个构造函数以从 TypeScript 中的 (keyof) 参数正确推断泛型类型

我知道在 TypeScript 中我可以声明如下函数:

function doSomething<E extends Element>(el : E) : E;
function doSomething<N extends keyof ElementTagNameMap>(selector : N) : ElementTagNameMap[N];
function doSomething<E extends Element>(el : E | keyof ElementTagNameMap) {
  if(typeof el === 'string') {
    return document.createElement(el) as Element as E;
  } else {
    return el;
  }
}
Run Code Online (Sandbox Code Playgroud)

然后将正确键入它们的用法

doSomething(document.querySelector('option')!) // return value typed as HTMLOptionElement
doSomething(new Image()); // return value typed as HTMLImageElement
doSomething('input'); // return value typed as HTMLInputElement
Run Code Online (Sandbox Code Playgroud)

如何使用泛型类的构造函数实现相同的目的?

class Some<E extends Element> {
  public element : …
Run Code Online (Sandbox Code Playgroud)

generics typescript

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

哪个版本的 AEM 支持 .cfg.json 配置文件?

因此,https://sling.apache.org/documentation/bundles/configuration-installer-factory.html告诉我们,当前推荐的配置 OSGi 组件的方法是使用.cfg.json文件。但是,它指出,自安装程序配置工厂 1.2.0\xe2\x80\x9d 以来,仅支持 \xe2\x80\x9c[\xe2\x80\xa6]。

\n

所以现在我\xe2\x80\x99d想知道:

\n
    \n
  1. 如何确定我的 AEM 使用的是哪个版本的 \xe2\x80\x9cInstaller Configuration Factory\xe2\x80\x9d?
  2. \n
  3. 哪个版本的 AEM 预装了安装程序配置工厂 \xe2\x89\xa5 1.2.0?
  4. \n
  5. 如果 I\xe2\x80\x99m 在旧版本的 AEM 上,如何升级安装程序配置工厂?
  6. \n
\n

我无法\xe2\x80\x99找到任何这些的明确答案。但 Adob​​e 有时也建议使用 .cfg.json 配置文件,但仅限于有关 AaaCS 的文章中。仅 AaaCS 支持吗?

\n

抱歉我的语气尖刻,但缺乏可靠、简洁的文档令人愤怒\xe2\x80\xa6

\n

osgi aem

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