我希望能够在屏幕上和屏幕外移动子视图,就像在iPhone照片应用程序中构建的图像之间进行浏览一样,所以当我用手指放开时子视图的屏幕超过1/2,它必须屏幕上的动画,但它也必须支持滑动,因此如果滑动/平移速度足够高,它必须在屏幕上显示动画,即使屏幕可能小于1/2.
我的想法是使用UIPanGestureRecognizer,然后测试速度.这是有效的,但是如何基于视图的当前位置和平移速度为UIView的移动设置正确的动画持续时间,使其看起来平滑?如果我设置一个固定值,与我的手指滑动速度相比,动画开始变慢或变快.
uiview uigesturerecognizer uiviewanimation ios uipangesturerecognizer
我不知道为什么,但现在我在构建项目时启动的默认iphone模拟器是"ipad",但我希望它使用iphone 3g代替.
有没有办法设置这个偏好?
我想重新创建一个视图,您可以在查看电子邮件时像iPhone/iPad Mail应用程序或Sparrow一样进行缩放,其中顶部有信息块,然后是UIWebView.我显然可以在界面构建器或代码中轻松完成此操作,但我希望它的行为类似于Mail应用程序.
我喜欢"喜欢邮件应用程序",当你捏缩放(在视图中的任何地方)时,UIWebView是唯一实际缩放的视图,顶级内容保持相同的大小.当您缩小太远并看到背景时,整个视图会缩小(不仅仅是UIWebview),整个视图也会滚动.
我已经做了一些实验,并尝试了一些建议,比如在UIWebView的顶部插入顶视图,根据内容大小扩展UIWebView的高度,但这总是会导致顶视图缩放,或者只是UIWebView.
我希望这是有道理的.这可能很简单,但我一直试图对它进行一段时间的分类,以至于我再也看不到木头了.
这适用于MonoTouch应用程序,但如果有人有Objective-C示例或任何我可以转换和回发的内容.
我通过覆盖draw rect创建了一个蜘蛛图表,我使用核心grahics CAShapeLayer绘制我的区域,在屏幕上创建了多个CAShapeLayer区域,我想检测用户触摸时触摸哪个图层...但是我弄不清楚怎么样?
在我的应用程序中,我有一个包含一些数据的NSArray.我想把这些数据放入一个NSMutableArray被调用的数据中subArrayData.我能够将我的第一个数组中的数据插入到可变数组中,但是当应用程序运行时,我得到:
警告:从'nsarray*'分配给'nsmutablearray*'的指针类型不兼容请帮帮忙.
以下是我的代码:.h文件
#import <UIKit/UIKit.h>
@interface AddNew : UIViewController
{
NSMutableArray *subArrayData;;
}
@property(nonatomic ,retain)NSMutableArray *subArrayData;
Run Code Online (Sandbox Code Playgroud)
.m文件
#import "AddNew.h"
#import "DashBoardPage.h"
#import "SubmitYourListing.h"
@implementation AddNew
@synthesize subArrayData;
-(void)accommodationAndTravel
{
subArrayData =[[NSArray alloc] initWithArray:[NSArray arrayWithObjects:@"Select one",@"Accommodation and travel hospitality",@"Apartments and villas",@"Bed and Breakfast",@"Caravan parks and campsites",@"Hospitality",
@"Hotels and Motels",@"Snow and Ski lodges",@"Tourist attractions and tourism information",@"Tours and Holidays",@"Travel agents and Services",nil]];
}
Run Code Online (Sandbox Code Playgroud) 是否可以将Sketch文件转换为SVG而无需实际使用Sketch或DrawIt?我知道它在理论上是可行的,因为它们都是矢量,但我使用Windows和Linux,所以我没有Mac打开文件.
我使用关键帧为HTML/CSS3创建了一个动画.
动画是一个图标,应该旋转并围绕其中心点缩放.
动画可以在Chrome中使用,但在Safari中,直到动画结束才能正常翻译.
在这里 - 捕捉到位置 - 在野生动物园:
这里是 - 平滑地动画到位置 - 在chrome中:
这是动画CSS:
@keyframes icon-animation {
0% {
left: 188.5px;
top: 187.5px;
transform: translate(-50%, -50%) rotate(-45deg);
transform-origin: 50% 50%;
width: 286.84px;
height: 233.81px;
}
16.6667% {
transform: translate(-50%, -50%) rotate(-45deg);
transform-origin: 50% 50%;
}
50% {
left: 188px;
top: 188.5px;
}
66.6667% {
transform: translate(-50%, -50%) rotate(0deg);
transform-origin: 50% 50%;
width: 200px;
height: 163px;
}
100% {
left: 188px;
top: 188.5px;
transform: translate(-50%, -50%) rotate(0deg); …Run Code Online (Sandbox Code Playgroud) 我想在iPhone应用程序中显示图像,但我使用的图像太大了.我想缩放它以适应iPhone屏幕,我找不到任何类来处理它.
我的任务是制作一个类似于擦除工具(用手指操作)的东西,它将显示背景图像而不是擦除图像.
这是我的源图像和目标图像(仅用于测试,实际图像将有所不同):
http://img232.imageshack.us/img232/6030/29572847.png
这是我的代码.创建模式:
- (void)setFrame:(CGRect)frame {
[super setFrame:frame];
if(revealPattern) CGPatternRelease(revealPattern);
CGPatternCallbacks callbacks = { 0, &patternCallback, NULL};
revealPattern = CGPatternCreate(self, self.bounds, CGAffineTransformIdentity, self.bounds.size.width, self.bounds.size.height, kCGPatternTilingConstantSpacing, true, &callbacks);
}
Run Code Online (Sandbox Code Playgroud)
模式回调函数(**info*包含指向self的指针):
void patternCallback(void *info, CGContextRef context) {
CGRect rect = ((DrawView *)info).bounds;
CGImageRef imageRef = ((DrawView *)info).backgroundImage.CGImage;
CGContextTranslateCTM(context, 0, rect.size.height);
CGContextScaleCTM(context, 1.0, -1.0);
CGContextDrawImage(context, rect, imageRef);
}
Run Code Online (Sandbox Code Playgroud)
和绘图方法:
- (void)drawPoints:(CGContextRef)context{
if([points count] < 2) return;
CGPoint lastPoint = [[points objectAtIndex: 0] CGPointValue];
CGContextBeginPath(context);
CGContextMoveToPoint(context, lastPoint.x, lastPoint.y);
CGContextSetBlendMode(context, kCGBlendModeNormal);
CGColorSpaceRef …Run Code Online (Sandbox Code Playgroud) 当我创建一个显式动画来将CAShapeLayer的路径值从椭圆更改为矩形时,我遇到了一个问题.
在我的画布控制器中,我设置了一个基本的CAShapeLayer并将其添加到根视图的图层:
CAShapeLayer *aLayer;
aLayer = [CAShapeLayer layer];
aLayer.frame = CGRectMake(100, 100, 100, 100);
aLayer.path = CGPathCreateWithEllipseInRect(aLayer.frame, nil);
aLayer.lineWidth = 10.0f;
aLayer.strokeColor = [UIColor blackColor].CGColor;
aLayer.fillColor = [UIColor clearColor].CGColor;
[self.view.layer addSublayer:aLayer];
Run Code Online (Sandbox Code Playgroud)
然后,当我为路径设置动画时,在动画的最后几帧中,当形状变为矩形时会出现奇怪的毛刺/闪烁,而在前几帧中,当动画远离矩形时,会出现奇怪的毛刺/闪烁.动画设置如下:
CGPathRef newPath = CGPathCreateWithRect(aLayer.frame, nil);
[CATransaction lock];
[CATransaction begin];
[CATransaction setAnimationDuration:5.0f];
CABasicAnimation *ba = [CABasicAnimation animationWithKeyPath:@"path"];
ba.autoreverses = YES;
ba.fillMode = kCAFillModeForwards;
ba.repeatCount = HUGE_VALF;
ba.fromValue = (id)aLayer.path;
ba.toValue = (__bridge id)newPath;
[aLayer addAnimation:ba forKey:@"animatePath"];
[CATransaction commit];
[CATransaction unlock];
Run Code Online (Sandbox Code Playgroud)
我尝试了许多不同的东西,比如锁定/解锁CATransaction,玩各种填充模式等等......
这是故障的图像:http: //www.postfl.com/outgoing/renderingglitch.png
可以在此处找到我正在体验的视频:http: //vimeo.com/37720876
ios ×6
iphone ×4
objective-c ×2
cgpath ×1
cocoa-touch ×1
ipad ×1
object ×1
safari ×1
sketch-3 ×1
uiscrollview ×1
uiview ×1
uiwebview ×1
xamarin.ios ×1
xcode ×1
xcode4.2 ×1