我最近升级到了Xcode 4.喜欢IB整合; 讨厌其他一切.
无论如何,也许只是我疯了,但我似乎无法在GDB命令行中输入任何内容(你甚至可以打开控制台,然后作为输出窗口或通过Log导航器?).
有人有解决方案吗?希望这只是我在这里愚蠢...
我目前正在开发一个iPhone应用程序,我想使用一些在LGPL下发布的现有代码.由于Apple App Store的性质,该应用程序不是开源的,我可能会收取一笔金额(0.99美元或1.99美元)以覆盖商店发布的广告.我研究了LGPL,我知道如果你将它用作库,它允许使用专有软件的代码.但是,有问题的代码是用JavaScript编写的,所以我需要将其转换为Objective-C,我认为这会将其视为"衍生作品",我想这需要它必须是开源的(请纠正我)如果我错了)所以我的问题是,如果将一个库翻译成另一种语言使它成为"衍生作品",如果是这样就足以开源于库,或者整个使用它的应用程序也必须在LGPL下发布?
我也有一个子问题.该库的先前版本已经被翻译成多种语言,包括Objective-C.但是,它们是在GPL下发布的时候编写的(禁止在封闭源代码软件中使用它).同时许可证更改为LGPL(原始JavaScript版本),但是这会影响翻译版本还是纯粹的GPL?
有人能告诉我XQuery node()和element()类型之间的确切区别吗?文档说明这element()是一个元素节点,node()而是任何节点,所以如果我理解它element()是一个子集node().
问题是我有一个像这样的XQuery函数:
declare function local:myFunction($arg1 as element()) as element() {
let $value := data($arg1/subelement)
etc...
};
Run Code Online (Sandbox Code Playgroud)
现在我想用一个参数调用该函数,该参数由另一个函数获得,比如说functionX(我无法控制):
let $parameter := someNamespace:functionX()
return local:myFunction($parameter)
Run Code Online (Sandbox Code Playgroud)
问题是,functionX返回一个node()所以它不会让我$parameter直接通过.我尝试改变我的函数类型node()而不是一个element(),但后来我似乎无法读取它的任何数据.$value只是空的.
有没有办法将节点转换为元素,或者我应该错过什么?
编辑:据我所知,问题出在我尝试使用子元素的部分$arg1/subelement.显然你可以这样做,如果$arg1是,element()但不是如果它是node().
更新:我已经测试了下面Dimitre提供的示例,它确实工作正常,包括Saxon和eXist DB(我使用的是XQuery引擎).问题实际上发生在request:get-data()eXist DB 的功能上.当通过REST使用eXist时,此函数获取POST请求提供的数据,将其解析为XML并将其作为a返回node().但由于某种原因,当我将数据传递给另一个函数时,XQuery并不承认它是有效的element(),即使它是.如果我手动提取它(即复制输出并将其粘贴到我的源代码),将其分配给变量并将其传递给我的函数一切顺利.但是,如果我直接传递它,它会给我一个运行时错误(实际上instance of测试失败).
我需要能够让它忽略这种类型检查或"数据转换"数据到element().
我有一个视图控制器FromViewController,我希望它呈现ToViewController一个自定义过渡。我已经UIViewControllerAnimatedTransitioning为 to- 和 from-转换实现了,当我呈现和关闭ToViewController.
但是,如果 myFromViewController包含在 a 中,UINavigationController当我关闭ToViewController.
这是UIViewControllerAnimatedTransitioning解雇时的代码:
- (void)animateTransition:(nonnull id<UIViewControllerContextTransitioning>)transitionContext {
self.toViewController = (ToViewController *)
[transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
UINavigationController *navigationController = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];
self.fromViewController = (FromViewController *)navigationController.topViewController;
self.containerView = transitionContext.containerView;
[self.containerView insertSubview:self.fromViewController.view belowSubview:self.toViewController.view];
// My animations go here
// In the animation completion block I call:
[transitionContext completeTransition:!transitionContext.transitionWasCancelled]; // this is when my screen goes black
}
Run Code Online (Sandbox Code Playgroud)
我已经检查了该应用程序,并且在解雇后似乎既不存在UINavigationController也不FromViewController在视图层次结构中。
uiviewcontroller uinavigationcontroller ios presentviewcontroller
我在 Github 存储库中有一个分支,名称如下:feature/X/mybranch。一位同事对我的分支进行了更改,但将其提交给feature/x/mybranch. Github 似乎区分大小写,在他的提交中创建了一个单独的分支。
现在的问题是我的 Git 客户端只能看到一个分支(我在 macOS 上),即原来的大写分支。这会带来各种各样的问题。最初,我什至看不到他的提交,并且在不知道真正的问题是什么的情况下,我尝试了不同的方法,最终能够在git reset --hard. 然而,一些副作用仍然存在。例如,我的客户不断告诉我,我有尚未推送的提交,尽管我可以在 Github 中看到它们。
理想情况下,我只想将他的分支合并到我的分支中并删除它(或者甚至只是删除,因为我很确定我拥有他的所有更改),但我不知道该怎么做。如前所述,我的客户(在终端和 Sourcetree 中都尝试过)只看到一个分支,而且我真的不知道如果删除它会发生什么。
我无法在我的组件上运行 Jest 测试,因为它无法加载 html 文件。我收到此错误:
Error: Error: connect ECONNREFUSED 127.0.0.1:80
Run Code Online (Sandbox Code Playgroud)
其次是:
Unhandled Promise rejection: Failed to load landing.component.html
Run Code Online (Sandbox Code Playgroud)
运行非组件测试就可以了。
这是我的jest.config.js
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
module.exports = {
preset: "jest-preset-angular",
testEnvironment: "jsdom",
setupFilesAfterEnv: ["<rootDir>/setup-jest.ts"],
globals: {
"ts-jest": {
tsconfig: "<rootDir>/tsconfig.spec.json",
stringifyContentPathRegex: "\\.(html|svg)$",
},
},
snapshotSerializers: [
"jest-preset-angular/build/serializers/html-comment",
"jest-preset-angular/build/serializers/ng-snapshot",
"jest-preset-angular/build/serializers/no-ng-attributes",
],
moduleDirectories: ["node_modules", "."],
testMatch: ["**/+(*.)+(spec|test).+(ts|js)?(x)"],
transform: {
"^.+\\.(ts|js|html)$": "ts-jest",
},
resolver: "@nrwl/jest/plugins/resolver",
moduleFileExtensions: ["ts", "js", "html"],
coverageReporters: ["html"],
};
Run Code Online (Sandbox Code Playgroud)
我的setup-jest.ts
import 'jest-preset-angular/setup-jest';
Run Code Online (Sandbox Code Playgroud)
和我的tsconfig.spec.json
{
"extends": "./tsconfig.json",
"compilerOptions": { …Run Code Online (Sandbox Code Playgroud) 我正在开发一个主要用于纵向模式的应用程序(除少数视图外).我们在iOS 8中遇到一个问题UIViewAlert,即使底层视图控制器仅支持纵向方向且其shouldAutorotate方法返回NO ,应用程序在显示时也能够旋转.UIAlertView旋转到横向时旋转甚至不完整,但底层视图仍保持纵向模式.如果我们在iOS 7中运行应用程序没有问题.
我知道UIAlertViewiOS 8已被弃用,我们现在应该使用它UIAlertController.但是,我真的希望避免更换它,因为这意味着要编辑50多个使用UIAlertView和的类UIAlertViewDelegate.此外,我们仍然支持iOS 7,所以我必须有两个解决方案.当我们完全切换到iOS 8时,我宁愿只做一次.
这可能是一个愚蠢的问题,但是可以使用XPath进行查询而无需指定元素名称吗?通常我会写类似的东西
//ElementName[@id = "some_id"]
Run Code Online (Sandbox Code Playgroud)
但问题是我有许多(大约40个)具有id属性的不同元素类型,并且我希望能够在id适合时返回任何元素类型.但我不想单独为每种类型打电话.是否可以一次搜索所有这些,无论名称如何?
我在XQuery脚本中使用它,如果它提供任何帮助.
我想自定义一个,NSPopUpButton所以我已经实现了一个CustomMenuItemView,现在只有以下代码(用于测试目的):
- (void)drawRect:(NSRect)dirtyRect
{
[[NSColor redColor] set];
NSRectFill(dirtyRect);
}
Run Code Online (Sandbox Code Playgroud)
现在,对于NSMenuItem我添加到的每一个NSMenu,myPopUpButton.menu我将视图设置为我的自定义视图:
NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle:@"Some title" action:NULL keyEquivalent:@""];
menuItem.view = [[CustomMenuItemView alloc] initWithFrame:NSMakeRect(0, 0, 100, 25)];
Run Code Online (Sandbox Code Playgroud)
当我运行我的程序并打开弹出按钮时,菜单项选择似乎被禁用(即当我点击它时没有任何反应).
我猜它实际上并没有被禁用; 它只是不再响应事件了.我是否需要在自定义视图中添加一些事件处理?如果是这样,怎么样?
我有以下(简化)代码:
<!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js" />
<script language="javascript" type="text/javascript">
function testFunction() {
alert('It works');
}
</script>
</head>
<body>
<form method="post" action="test.html" onsubmit="testFunction()">
<input type="submit" value="Test" />
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我的testFunction()函数自我运行正常,直到我用行导入jQuery
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js" />
Run Code Online (Sandbox Code Playgroud)
现在它失败并告诉我 Uncaught ReferenceError:testFunction未定义
我希望这是一个新手的错误,我错过了一些明显的东西.请注意,我还没有尝试使用jQuery.
我有一个UITextView带有属性的文本,其设置如下:
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is a message.\nClick here for more info"];
textView.linkTextAttributes = @{NSUnderlineStyleAttributeName : @(NSUnderlineStyleSingle)};
NSRange linkRange = [attributedString.string rangeOfString:@"Click here for more info"];
[attributedString addAttribute:NSLinkAttributeName value:@"" range:linkRange];
textView.attributedText = attributedString;
UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(infoTapped:)];
[textView addGestureRecognizer:tapRecognizer
Run Code Online (Sandbox Code Playgroud)
然后我抓住了这样的水龙头:
- (void)infoTapped:(UITapGestureRecognizer *)tapGesture {
if (tapGesture.state != UIGestureRecognizerStateEnded) {
return;
}
UITextView *textView = (UITextView *)tapGesture.view;
CGPoint tapLocation = [tapGesture locationInView:textView];
UITextPosition *textPosition = [textView closestPositionToPoint:tapLocation];
NSDictionary *attributes = [textView textStylingAtPosition:textPosition inDirection:UITextStorageDirectionForward];
NSString …Run Code Online (Sandbox Code Playgroud) ios ×3
objective-c ×2
xquery ×2
angular ×1
cocoa ×1
console ×1
exist-db ×1
gdb ×1
git ×1
github ×1
gpl ×1
ios8 ×1
ios9 ×1
iphone ×1
javascript ×1
jestjs ×1
jquery ×1
lgpl ×1
nsmenuitem ×1
nsview ×1
ts-jest ×1
uialertview ×1
uitextview ×1
xcode4 ×1
xpath ×1