我正在寻找一种方法来测试一个网站.像浏览器插件,你可以在其中定义时间间隔和非点击区域,然后插件将在指定的时间间隔内开始点击(可能还有其他操作)到处(非点击区域或DOM元素除外).
我在网上搜索过,只发现了iPhone和Android这类测试.
我试图捕捉(屏幕截图)一个视图.为此,我使用下面显示的一段代码将其作为PNG图像保存到我的文档目录中.
UIGraphicsBeginImageContextWithOptions(highlightViewController.fhView.centerView.frame.size, YES, 1.0);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"1.png"];
NSData *imageData = UIImagePNGRepresentation(screenshot);
[imageData writeToFile:appFile atomically:YES];
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)
问题:我可以捕获部分视图吗?因为在上面的代码我不能改变原点(框架).如果有人有其他方法来捕获视图的特定部分,请分享.
在开始之前,让我说:这不是功课,只是简单,陈旧,有趣.
现在,我试图想出一个能够回答这个问题的算法1/x + 1/y = 1/n!.
正如您在上面的链接中所看到的,作者只询问提示而不是实际答案,所以我会请求同样的.
我将表达式简化为(x - n!)(y - n!)=(n!)^ 2,如其中一个答案所示,到那时我理解了(x,y)对的组合数与n!^ 2的除数数相同(如果我错了,请纠正我).
所以,正如接受的答案所暗示的那样,我试图得到每个素数组成N!^ 2的所有因子的乘法.
我在C中使用试验分区得出了一些代码来分解N!^ 2和Eratosthenes的Sieve以获得所有素数达到sqrt(N!^ 2).
现在的问题是内存,我试过N = 15而我的Mac(四核6GB内存)几乎死在我身上.问题是记忆力.所以我添加了一些printf并尝试使用N = 11:
Sieve of Eratosthenes took 13339.910000 ms and used 152 mb of memory
n= 11; n!^2 = 1593350922240000; d = 6885
[2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,5,5,5,5,7,7,11,11]
Run Code Online (Sandbox Code Playgroud)
该列表是N!^ 2的所有主要因素(当然除了1和N!^ 2).
我想要一些关于如何最小化内存消耗和可能的优化的提示.
代码吼叫,这只是一个快速实验,所以我确信它可以优化.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <strings.h>
#include <sys/time.h>
#include <assert.h>
//Linked List
struct node {
struct …
Run Code Online (Sandbox Code Playgroud) 我想要得到的是此滚动视图具有的相同行为:
我知道这是使用HTML而不是本机API,但我正在尝试将其实现为UIKit组件.
现在,我正在寻找的行为:
同一页面,但现在是从右到左:
我尝试过的:
我没有想法.
谢谢!
更新:
我最终使用Rob Mayoff的方法,看起来很干净.我更改了它,因此当速度为0时它会起作用,例如当用户拖动,停止和释放手指时.
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView
withVelocity:(CGPoint)velocity
targetContentOffset:(CGPoint *)targetContentOffset {
CGFloat maxOffset = scrollView.contentSize.width - scrollView.bounds.size.width;
CGFloat minOffset = 0;
if (velocity.x == 0) {
CGFloat targetX = MAX(minOffset,MIN(maxOffset, targetContentOffset->x));
CGFloat diff = targetX - baseOffset;
if (ABS(diff) > offsetStep/2) {
if (diff > 0) {
//going left
baseOffset = MIN(maxOffset, baseOffset + offsetStep);
} else {
//going right
baseOffset = MAX(minOffset, baseOffset - offsetStep);
} …
Run Code Online (Sandbox Code Playgroud) 我试图在协议中声明一个函数,该函数强制符合它的类型返回相同协议的值,但具有特定的关联类型:
protocol Protocol {
typealias ValueType
var value : ValueType? {get}
func getProtocolString<A where A : Protocol, A.ValueType == String>() -> A
}
Run Code Online (Sandbox Code Playgroud)
这编译.当我尝试创建一个符合它的类时,我得到了错误:
class AClass<T> : Protocol {
var value : T?
func getProtocolString<A where A : Protocol, A.ValueType == String>() -> A {
return AClass<String>()
}
}
Run Code Online (Sandbox Code Playgroud)
错误是'AClass'不能转换为'A'.
我错过了什么吗?这甚至可能吗?
谢谢
我有这段代码来禁用所有文本选择.除了输入外,我如何禁用所有文本?我试过 $('* :not(input)').disableTextSelect();
但它禁用了一切的选择(包括输入)
$.extend($.fn.disableTextSelect = function () {
return this.each(function () {
if ($.browser.mozilla) {//Firefox
$(this).css('MozUserSelect', 'none');
} else if ($.browser.msie) {//IE
$(this).bind('selectstart', function () { return false; });
} else {//Opera, etc.
$(this).mousedown(function () { return false; });
}
});
});
$('* :not(input)').disableTextSelect();
Run Code Online (Sandbox Code Playgroud) 有人知道一种方法拒绝UISegmentedControl对象的输入吗?
在我的应用程序加载阶段,如果点击UISegmentedControl,应用程序崩溃.
我试过了:
[segmentControl setEnabled:NO];
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用......
请告诉我之间的差异test.length
和[test length]
?
哪个对iOS开发更有用?
ios ×5
iphone ×3
cocoa ×2
objective-c ×2
xcode ×2
algorithm ×1
c ×1
firefox ×1
generics ×1
javascript ×1
jquery ×1
math ×1
screenshot ×1
swift ×1
testing ×1
uiscrollview ×1