小编Vad*_*Vad的帖子

JavaScript DOM:在容器中查找元素索引

我需要通过对象引用在其容器内找到元素索引.奇怪的是,我找不到一个简单的方法.没有jQuery请 - 只有DOM.

UL
 LI
 LI
 LI - my index is 2
 LI
Run Code Online (Sandbox Code Playgroud)

是的,我可以为每个元素分配ID并循环遍历所有节点以匹配ID,但这似乎是一个糟糕的解决方案.是不是有更好的东西?

所以,假设我有一个对象引用第三个LI,如上例所示.我怎么知道它是索引2?

谢谢.

html javascript dom parent-child

66
推荐指数
8
解决办法
10万
查看次数

应用UIView变换后查找帧坐标(CGAffineTransform)

我用我的视角旋转 CGAffineTransform

[view setTransform:newTransform];
Run Code Online (Sandbox Code Playgroud)

应用变换后帧值保持不变,但如何找到此帧的"旋转"或变换值?

http://www.informit.com/content/images/art_sadun_affine/elementLinks/sadun_fig02.png

我想要旋转帧边缘的精确坐标,即a,b,c,d点.

iphone objective-c uiview cgaffinetransform ios

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

通过NSAttributedString属性循环以增加字体SIze

我只需循环遍历所有属性NSAttributedString并增加其字体大小.到目前为止,我已经达到了成功循环并操纵属性的程度,但我无法保存NSAttributedString.我评论出的这条线对我不起作用.怎么收回?

NSAttributedString *attrString = self.richTextEditor.attributedText;

[attrString enumerateAttributesInRange: NSMakeRange(0, attrString.string.length)
                               options:NSAttributedStringEnumerationReverse usingBlock:
 ^(NSDictionary *attributes, NSRange range, BOOL *stop) {

     NSMutableDictionary *mutableAttributes = [NSMutableDictionary dictionaryWithDictionary:attributes];        

     UIFont *font = [mutableAttributes objectForKey:NSFontAttributeName];
     UIFont *newFont = [UIFont fontWithName:font.fontName size:font.pointSize*2];         
     [mutableAttributes setObject:newFont forKey:NSFontAttributeName];
     //Error: [self.richTextEditor.attributedText setAttributes:mutableAttributes range:range];
     //no interfacce for setAttributes:range:

 }];
Run Code Online (Sandbox Code Playgroud)

objective-c nsattributedstring ios

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

使用Transform旋转时调整UIView的大小

当我UIView使用transform属性(CGAffineTransformMakeRotation)旋转我时,我需要拖动它的一个角,比如说右下角,以调整它的大小.在此过程中,当用户拖动角落时,视图的角落必须跟随用户的手指,并通过增加2个边(右下角拖动的右下角)来调整框的大小.

UIView当不转换框时,可以使用框架和触摸位置来调整大小并不困难.例如,我会记住UIPanGestureRecognizer handlerStateBegan上附加到此可调整大小视图的初始帧和触摸,并且在StateChanged上,我将计算触摸点X,Y与初始触摸的差异,并将这些值添加到初始帧宽度和高度.

但是,UIView当应用变换时,帧对于旋转是可靠的.因此,我只能依靠boundscenter.我创建了这个代码,但它几乎可以工作:我只能在所有4个方向上按比例放大视图,而不是一个.

- (void)handleResizeGesture:(UIPanGestureRecognizer *)recognizer {
    CGPoint touchLocation = [recognizer locationInView:self.superview];
    CGPoint center = self.center;

    switch (recognizer.state) {
        case UIGestureRecognizerStateBegan: {
            deltaAngle = atan2f(touchLocation.y - center.y, touchLocation.x - center.x) - CGAffineTransformGetAngle(self.transform);
            initialBounds = self.bounds;
            initialDistance = CGPointGetDistance(center, touchLocation);
            initialLocation = touchLocation;
            if ([self.delegate respondsToSelector:@selector(stickerViewDidBeginRotating:)]) {
                [self.delegate stickerViewDidBeginRotating:self];
            }
            break;
        }

        case UIGestureRecognizerStateChanged: {

            CGFloat scale = CGPointGetDistance(center, touchLocation)/initialDistance;
            CGFloat minimumScale = …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uigesturerecognizer ios

20
推荐指数
2
解决办法
2235
查看次数

从Modal View Controller返回RootViewController

从Home视图 - 我的RootViewController - 当用户在导航层次结构中进行时,我一个接一个地打开2个ViewControllers,如下所示:

1)通过我的Storyboard中连接的按钮推送SecondViewController

2)ThirdViewController以模态呈现

[self performSegueWithIdentifier:@"NextViewController" sender:nil];
Run Code Online (Sandbox Code Playgroud)

所以,图片是:RootViewController - > SecondViewController - > ThirdViewController

现在在我的ThirdViewController中,我希望有一个按钮可以返回2次到我的RootViewController,即回家.但这不起作用:

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

只有这个人回到SecondViewController一次

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

如何同时删除模态和推送视图控制器?

objective-c storyboard uiviewcontroller uinavigationcontroller ios

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

实施阻尼(惯性)到全景旋转

我知道OrbitControls.js有一个阻尼功能,它可以平滑地拖动全景,也称为缓动.我想实现相同的功能,但不使用此库.原因是我需要减少使用的代码量并更严格地控​​制鼠标或点击事件.

我已经构建了这个Plunker来显示我用作全景视图的初始项目的演示.

https://plnkr.co/edit/eX2dwgbrfNoX9RwWaPaH?p=preview

在此演示中,鼠标坐标将转换为纬度/经度,这将调整摄像机位置.这是来自three.js网站的最基本,最小的全景示例.

当我玩弄阻尼时OrbitControls.js(见这一行)我无法得到相同的平滑行为 - 互动导致全景跳跃:

if ( scope.enableDamping === true ) {
    sphericalDelta.theta *= ( 1 - scope.dampingFactor );
    sphericalDelta.phi *= ( 1 - scope.dampingFactor );
    panOffset.multiplyScalar( 1 - scope.dampingFactor );
}
Run Code Online (Sandbox Code Playgroud)

我不相信我可以完全理解如何将它应用于我在Plunker中的示例.

任何人都可以指导我从正确的方向申请damping我从Plunker的例子吗?

更新:

我设法通过为经度和纬度添加新的delta值来进步:查看latDeltalonDelta 更新的Plunker.我知道它是如何工作的OrbitControls.js.您现在可以在初始页面加载时观察到理想的平滑滚动,因为lonDelta = 0.35.但是,我不确定在用户鼠标滚动期间如何操作它.至少我正朝着正确的方向前进.

javascript three.js easing

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

UIWebView到UIImage

我尝试使用此方法从UIWebView捕获图像,但图像仅包含屏幕的可见区域.如何捕获包含不可见区域的UIWebView的完整内容,即将整个网页合并为一个单独的图像?

-(UIImage*)captureScreen:(UIView*) viewToCapture{
  UIGraphicsBeginImageContext(viewToCapture.bounds.size);
  [viewToCapture.layer renderInContext:UIGraphicsGetCurrentContext()];
  UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();
  return viewImage;
}
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c uiwebview

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

检测取消按钮点击"确认您的应用程序内购买"UIAlert

我根据教程实现了应用内购买.我遇到的问题是,我无法检测到"确认您的应用程序内购买"警报时按下取消按钮,这是StoreKit框架的一部分.

一些来源建议-(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions在按下取消时调用,但在我的情况下它永远不会运行.我的设置是ViewController,它导入符合SKProductRequestDelegate和SKPaymentTransactionObserver的IAPManager:NSObject类.产品成功被请求,但事务观察者从不打电话paymentQueue.

如何让它工作,以便我可以检测取消按钮?

iphone xcode objective-c storekit in-app-purchase

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

Three.js:使用缩放和混合效果过渡2纹理

我试图从一个全景立方体图像平滑过渡到另一个全景立方体图像,以实现房间内的漫游效果.我将这个样本用作Scene,Camera,Mesh SkyBox所有设置的启动器.现在我正在考虑过渡到一个新的全景立方体的最佳方法,这样一个立方体图像可以放大并融入另一个立体图像,就像用户走进房间一样.

我想到了第二个场景和第二个相机,因为旧图像需要放大和淡出,而新图像放大和淡入以实现非常平滑的过渡.我在这里遇到了一些挑战,同时显示了2张图像.旧的一个 - sceneA - 在SceneB出现时不可见,并用以下内容覆盖:

renderer.clear();//multi-scene
if(sceneA && cameraA)
        renderer.render( sceneA, cameraA );
renderer.clearDepth();
renderer.render( sceneB, cameraB );
Run Code Online (Sandbox Code Playgroud)

但即使是固定的,如果这是一个正确的方法,我会再考虑一下.我想尝试纹理转换,也许.我无法找到示例或了解如何做到这一点.

如何使用场景或纹理的不同来源从一个可见的立方体图像(纹理)平滑过渡到另一个?

javascript 3d three.js

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

Instagram API权限因iOS应用程序而被拒绝以提取公共内容数据

我的iOS应用程序需要使用Instagram API加载一些图像,基于地理位置的用户反馈.我请求Instagram团队的public_content权限,但下面有解释被拒绝,即使我填写了尽可能多的信息.注意我的应用程序仅在开发中,网站看起来非常小,但提交了一些设计和大量描述以供审核.

如何解决获取这些基本权限的问题?我用谷歌搜索,我注意到这是一个常见的问题.

一般问题:无效的使用案例:您的提交备注,截屏视频和网站中描述的用例不是我们在平台上允许的有效用例.有关详细信息,请参阅我们的权限审核和有效用例说明(https://www.instagram.com/developer/review/).

public_content:此权限(public_content)不支持您在提交备注,截屏视频和网站中描述的用例.请查看登录权限(http://instagram.com/developer/authorization/)以获取权限和有效用例的完整列表.

instagram instagram-api

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