我创建了一个逻辑,用于裁剪包含在网格内部边框内的图像.网格有很多边框,所以这个网格会有很多图片.问题是,当我缩放图片时,逻辑会缩放图片(这没关系)但是当我使用裁剪逻辑时,它AdornerLayer会像图片一样走出边框:
在这张图片上,pic没有缩放,所以这AdornerLayer是正确的:
我用来将裁剪添加到图像的代码:
private void AddCropToElement(FrameworkElement fel, System.Drawing.Image img)
{
if (!cropElements.ContainsKey(Convert.ToString(((Image)fel).Source)))
{
if (_felCur != null)
{
RemoveCropFromCur();
}
rcInterior = new Rect(
fel.ActualWidth * 0.2,
fel.ActualHeight * 0.2,
fel.ActualWidth * 0.6,
fel.ActualHeight * 0.6);
rectMoving = false;
Rect newRect = scaleRect(rcInterior, img);
imgCropMove = img;
AdornerLayer aly = AdornerLayer.GetAdornerLayer(fel);
_clp = new CroppingAdorner(fel, rcInterior);
aly.Add(_clp);
cropElements.Add(Convert.ToString(((Image)fel).Source), fel);
imageCropped = _clp.Crop(new System.Drawing.Bitmap(img), newRect);
_clp.CropChanged += HandleCropChanged;
_felCur = fel;
}
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,名为fel的对象是我要裁剪的图片,而Border是他的父级.
如果图像被缩放,我如何解决AdornerLayout外出的问题?
我是Mac OS X世界的新手,但我有Windows开发技能.
我需要开发一个从Web服务上传/下载文件的守护进程(在Windows上将是Windows服务).
我的问题是:是否有可能创建一个用Objective-C编写的应用程序,它将成为守护进程(上传/下载)并在操作系统开始使用launchd时启动它?或者还有另一种创建守护进程的方法?
谢谢
在MacOS上,我们有一个实现ARC的代理,它将根据用户的设置每10或15秒向服务器发出一些请求,并且在将近一年的时间内没有任何问题,几周前应用程序崩溃了在一台具有错误访问错误的计算机中,特别是在此行上:
[NSURLConnection sendSynchronousRequest:request returningResponse:&responseCode error:&error];
Run Code Online (Sandbox Code Playgroud)
导致问题的机器的Mac OS X版本是10.7.5,但是在具有相同OS版本的其他计算机中工作正常.
我们正在使用同步请求,因为这是我们需要做的工作,但是我们花了一些时间使调用异步,但问题仍然存在.
因此,在查看其他帖子后,我们添加了一个缓存策略:[request setCachePolicy:NSURLRequestReloadIgnoringCacheData]; 避免缓存请求的任何问题.应用程序确实运行得更好,但在15到20次迭代之间崩溃之前,通常会在1500到1800次迭代(30-40分钟)之间崩溃.
通过查看堆栈溢出中的另一个问题,我们尝试使用ASIHTTPRequest修复此问题,但问题再次发生(它可能会在迭代#2或#123x ......中崩溃).
在出现错误之前,请求始终正常工作,我们正在获取数据并能够正常使用它.
启用NSZombieEnabled选项后,当应用程序崩溃时,我们没有收到任何消息,因为错误指向上面的特定行,因此try/catch块对我们不起作用;
[NSURLConnection sendSynchronousRequest:request returningResponse:&responseCode error:&error]
Run Code Online (Sandbox Code Playgroud)
这是我们使用NSURLConnection发出请求的代码:
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]
init]; [request setHTTPMethod:@"GET"]; [request setURL:[NSURL
URLWithString:url]]; [request setTimeoutInterval: TIMEOUT];
[request setCachePolicy: NSURLRequestReloadIgnoringCacheData];
NSString *authenticationHeader = [NSString
stringWithFormat:@"Basic %@", credentials]; [request
addValue:authenticationHeader
forHTTPHeaderField:@"Authorization"];
NSError *error = nil; NSHTTPURLResponse *responseCode = nil;
NSData *responseData = nil; responseData = [NSURLConnection
sendSynchronousRequest:request returningResponse:&responseCode
error:&error];
if([responseCode statusCode] != 200){ *hasError =[NSString
stringWithFormat: @"Error getting %@, HTTP status code %li", …Run Code Online (Sandbox Code Playgroud) 我正在使用Xamarin.Forms处理iOS应用程序.
此应用程序使用UIWebView控制器,显示托管在我的服务器上的Web应用程序.每次我发出请求时,我都必须发送一个自定义标头,以便识别此请求来自移动应用程序,而不是来自浏览器,为此,我使用NSUrlProtocol对象覆盖方法请求插入每个请求的自定义标头.这是我的代码:
public override NSUrlRequest Request {
get {
NSMutableDictionary headers = null;
if (null == base.Request.Headers) {
headers = new NSMutableDictionary ();
} else {
headers = new NSMutableDictionary (base.Request.Headers);
}
headers.Add(NSObject.FromObject(AppVariables.headerVariable), NSObject.FromObject (AppVariables.appVersion));
NSMutableUrlRequest newRequest = (NSMutableUrlRequest)base.Request.MutableCopy ();
newRequest.Headers = headers;
return newRequest;
}
}
Run Code Online (Sandbox Code Playgroud)
我现在遇到的问题是我注意到自从我开始使用NSUrlProtocol后,页面的加载时间增加了很多.现在加载需要10秒,在此实现之前,页面大约需要3秒钟.
任何人都可以指出一些有用的方向来克服这个?
现在我正在使用Xamarin.Forms开发一个应用程序.我遇到了TLS协议的问题.
我的应用程序使用API.由于安全原因,API使用HTTPS.本周我们决定取消TLS 1.0的支持,只接受服务器端的TLS 1.1和1.2,但是在我们做了这个改变后,我注意到我的应用程序停止了工作.
在调试时我注意到API的调用引发了异常(我正在使用来自.Net的HttpClient类).通过在互联网上搜索解决方案,我看到许多人认为问题与TLS支持有关.
我在Android和iOS上使用名为ModernHTTPClient的插件解决了这个问题,但我的一位客户报告说,他在Android上运行的设备上仍然存在问题(他正在运行Android 4.2设备).
检查Android文档我看到这个版本有支持但是默认情况下没有启用,而困难的部分是互联网上没有太多关于如何激活它的文档.
关于如何激活这个的任何建议?Xamarin.Android是否对TLS 1.1及以上版本有本机支持?
谢谢
我没有太多的iphone屏幕设计经验,但我需要制作一个这样的表:(图像),我做了一个调查,但我没有找到任何东西.这个表需要有一个圆角,用户将能够插入数据,在这种情况下,名字,姓氏等...现在我正在使用SDK 4.3.如果有人有教程我会很感激
谢谢,

我正在开发一个使用UNC路径访问同一LAN中的远程文件的应用程序.问题是,当尝试访问时,它会抛出与Windows凭据相关的异常.
有没有办法将凭证添加到我的UNC路径?
谢谢
我有以下问题:
在我的应用程序中,有两种方法可以导航到其他屏幕:按钮或标签栏.
所有屏幕都有调用其他屏幕的标签栏,但主屏幕是有按钮但没有标签栏的主屏幕.
当我开始开发我的应用程序时,我选择标签栏应用程序模板,如果我通过按下选项卡调用屏幕,它可以正常工作.当我使用主屏幕时,问题就开始了:
为了解决这个问题,我想也许我可以创建一个自定义标签栏(我还不知道如何),并在我的屏幕上像UIControl一样调用它,所以这样,如果我需要更改标签栏,修改将是能够调用该控件的所有屏幕.
您有什么推荐的吗?创建一个自定义标签栏并像UIControl一样使用它是个好主意?如果是的话,我该怎么创建一个呢?
我用它来调用windows
RecurringGiftListViewController *listViewController = [[RecurringGiftListViewController alloc] initWithNibName:@"RecurringGiftListViewController" bundle:nil];
listViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:listViewController animated:YES];
[listViewController release];
Run Code Online (Sandbox Code Playgroud) c# ×2
ios ×2
macos ×2
objective-c ×2
.net ×1
.net-4.0 ×1
adornerlayer ×1
border ×1
crop ×1
httpclient ×1
ios4 ×1
iphone ×1
launchd ×1
tls1.2 ×1
uitabbar ×1
uitabbaritem ×1
uitableview ×1
uiwebview ×1
windows ×1
wpf ×1
xamarin ×1
xcode ×1