问题列表 - 第20672页

在Objective-C中使用C函数(适用于iPhone)

'好吧.我是一个自我描述的iPhone编程招执的人(拥有更长的perl和网络背景 - 30年)......但上周冒了一大笔钱买了几本好书.在填写并阅读了超过1000页之后 - 并且非常了解它,我正在前往一个良好的第一个原生iPhone应用程序.我的问题是:我不知道如何在Objective-C中做一个简单的Geographic(lat/long)多边形点例程.我有2种方法可以做到这一点.一个在C(第一个代码示例)和一个在JavaScript(第二个代码示例):

// this is the poly.h file

int pnpoly(int nvert, float *vertx, float *verty, float testx, float testy);


// this is the poly.c file

#include "poly.h"
int pnpoly(int nvert, float *vertx, float *verty, float testx, float testy){
 int i, j, c = 0;
 for (i = 0, j = nvert-1; i < nvert; j = i++) {
 if ( ((verty[i]>testy) != (verty[j]>testy)) &&
  (testx < (vertx[j]-vertx[i]) * (testy-verty[i]) / (verty[j]-verty[i]) + vertx[i]) )
    c = !c; …
Run Code Online (Sandbox Code Playgroud)

c iphone polygon objective-c latitude-longitude

3
推荐指数
1
解决办法
4858
查看次数

正则表达式能做得更快吗?

我想将每个单词大写并将其合并为一个单词,例如:

home = Home
about-us =关于我们

这是我目前使用的功能,正则表达式可以做得更好还是更有效?

public function formatClassName($name)
{
 $name = str_replace('-', ' ', $name);
 $name = ucwords($name);
 $name = str_replace(' ', '', $name);
 return $name;
}
Run Code Online (Sandbox Code Playgroud)

php regex

11
推荐指数
2
解决办法
525
查看次数

多个应用程序,共享设置:使用注册表或基于XML的配置?

我的情景

我有一个类库,将从多个单独的可执行应用程序中调用.此类库需要知道要访问的数据库服务器的地址(以及许多其他配置选项,身份验证信息等).我有一个独立于类库的配置和管理应用程序,它还需要知道并设置这些配置选项.

我的问题

通常的做法是在Windows注册表中存储这些特定于用户的配置选项,还是首选对类库使用典型的"App.config"XML方法,并允许配置工具更改和修改它?

我倾向于注册表方法,但我知道许多人对不使用它有意见.你会怎么做?

c# registry configuration configuration-management

6
推荐指数
2
解决办法
1687
查看次数

如何以编程方式打开调用MKAnnotationView?(iPhone,MapKit)

我想以MKPinAnnotationView编程方式打开标注.例如,我在地图上放了10个针脚,想要打开离我最近的一个针脚.我该怎么做呢?

Apple已指定'selected'参数MKAnnotationView's,但不鼓励直接设置(这不起作用,尝试过).

其余MKAnnotationView只有一个setHighlighted(同一故事),并且可以ShowCallout方法..

任何提示,如果这是可能的吗?

iphone mapkit callouts mkannotation ios

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

C#NetworkStream.Read奇怪

任何人都能指出这段代码中的缺陷吗?我正在使用TcpClient检索一些HTML.与IIS服务器通信时,NetworkStream.Read()似乎永远不会完成.如果我去使用Fiddler代理,它可以正常工作,但直接与目标服务器通信时,.read()循环将不会退出,直到连接异常时出现"远程服务器已关闭连接"之类的错误.

internal TcpClient Client { get; set; }

/// bunch of other code here...

try
{

NetworkStream ns = Client.GetStream();
StreamWriter sw = new StreamWriter(ns);

sw.Write(request);
sw.Flush();

byte[] buffer = new byte[1024];

int read=0;

try
{
    while ((read = ns.Read(buffer, 0, buffer.Length)) > 0)
    {
        response.AppendFormat("{0}", Encoding.ASCII.GetString(buffer, 0, read));
    }
}
catch //(SocketException se)
{

}
finally
{
    Close();
}
Run Code Online (Sandbox Code Playgroud)

更新

在调试器中,我可以看到整个响应立即通过并附加到我的StringBuilder(响应).当服务器完成发送响应或我的代码没有检测到它时,似乎连接没有被关闭.

结论 正如这里所说的,最好利用协议的产品(在HTTP的情况下,Content-Length头)来确定事务何时完成.但是,我发现并非所有页面都设置了内容长度.所以,我现在正在使用混合解决方案:

  1. 对于所有事务,请将请求的Connection标头设置为"关闭",以防止服务器保持套接字打开.这可以提高服务器在响应您的请求时关闭连接的几率.

  2. 如果Content-Length已设置,请使用它来确定请求何时完成.

  3. 否则,将NetworkStream的RequestTimeout属性设置为一个大但合理的值,如1秒.然后,循环开启,NetworkStream.Read()直到a)超时发生,或b)您读取的字节数比您要求的少.

感谢大家的出色和详细的回复.

c# asp.net networkstream tcpclient

8
推荐指数
2
解决办法
4088
查看次数

使用mapkit计算两个地址之间的驾驶距离?

是否可以使用iphone sdk中的mapkit来计算两个地址之间的行车距离?

iphone objective-c mapkit ios

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

按下 ESC 时关闭 PrintPreviewDialog

我正在开发一个System.Windows.Forms.PrintPreviewDialog用于显示打印预览对话框的 WinForms 应用程序。当用户在该对话框中按 ESC 时,我想关闭该对话框。不幸的是,我无法弄清楚如何做到这一点。我尝试安装 KeyDown/PreviewKeyDown 事件处理程序,但它从未被调用。我还尝试将焦点设置到对话框(及其 PrintPreviewControl),认为这是问题所在,但这也无济于事。有谁知道如何使这项工作?

print-preview winforms

3
推荐指数
1
解决办法
1329
查看次数

使用CSS定位SVG元素

假设以下svg文档:

<svg version="1.1" baseProfile="full" width="300" height="200" xmlns="http://www.w3.org/2000/svg">
<text x="20" y="20">My text</text>
</svg>
Run Code Online (Sandbox Code Playgroud)

现在我想要做的是使用css重新定位此文本.

我试过添加style="dx:20"style="transform: translate(20)".两者对firefox和safari都没有影响.添加这些作为普通属性工作正常,但我不能将定位与实际代码分开.设置x,y,lefttop在风格不工作要么.

有没有办法使用CSS定位svg元素?

css svg

39
推荐指数
4
解决办法
6万
查看次数

SQL Server Management Studio中的SQL缩进

伙计们,有没有工具在查询窗口中格式化/缩进SQL Server查询?

sql sql-server indentation

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

如何在Grails中引用CSS中的图像资源?

我想在我的主样式表中引用Grails应用程序中的图像,但我无法使其工作.我的图片位于我的Grails应用程序的标准位置...

project\web-app\images\outbound-blue.png
Run Code Online (Sandbox Code Playgroud)

在我的样式表中,我想将它用作类的背景图像......

.messageimg {
    height:17px;
    width:16px;
    background-image:url(images/outbound-blue.png);
    background-repeat:no-repeat;
}
Run Code Online (Sandbox Code Playgroud)

由于某种原因,这不起作用.我的样式表也在正常位置,即

project\web-app\css\main.css
Run Code Online (Sandbox Code Playgroud)

当我在浏览器中加载页面时,我得到一个丢失的图像标记.我已经检查过我在名字等方面没有拼写错误.我也尝试在网址中摆弄虚拟路径,但是我无法弄清楚我需要在Grails中使用什么才能完成这项工作.

我不想使用GSP并在我的代码中插入IMG标记,因为我想通过样式控制图像.

那么,我做错了什么?

css grails resources

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