小编Mad*_*sen的帖子

根据缩放Google地图v3调整标记大小

我有一个在v3 API上运行的Google地图,我添加了一些自定义标记,是否可以根据地图的缩放级别进行缩放?我尝试搜索引用但似乎无法找到任何调整MarkerImage大小的方法.

也许我必须删除地图更改缩放的所有内容并创建不同大小的新标记?

google-maps-api-3

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

不可靠的Android Compass定位(低通滤波器)

我正在创建一个应用程序,我需要根据设备的方向定位ImageView.我使用MagneticField和Accelerometer Sensors中的值来计算设备方向

SensorManager.getRotationMatrix(rotationMatrix, null, accelerometerValues, magneticFieldValues)
SensorManager.getOrientation(rotationMatrix, values);
double degrees = Math.toDegrees(values[0]);
Run Code Online (Sandbox Code Playgroud)

我的问题是ImageView的定位对方向的变化非常敏感.使imageview不断跳到屏幕上.(因为度数变化)

我读到这可能是因为我的设备接近可能影响磁场读数的东西.但这不是它看起来的唯一原因.

我尝试下载一些应用程序,发现" 3D罗盘 "和" 指南针 "的读数仍然非常稳定(当设置噪声滤波器时),我想在我的应用程序中使用相同的行为.

我读到我可以通过添加" 低通滤波器 " 来调整读数的"噪音" ,但我不知道如何实现这一点(因为我缺乏数学).

我希望有人可以帮助我在我的设备上创建更稳定的读数,其中设备的一点点移动不会影响当前的方向.现在我做了一个小

if (Math.abs(lastReadingDegrees - newReadingDegrees) > 1) { updatePosition() }
Run Code Online (Sandbox Code Playgroud)

过滤噪音的升值.但它不能很好地工作:)

algorithm android signal-processing orientation compass-geolocation

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

Objective-C自动释放内存管理

我试图了解何时调用自动释放,以及这实际上会对我的对象做什么.

在Mac Developer Library中阅读关于内存管理后,我了解到当你有一个充当工厂方法的方法时 - 通过创建一个新对象并返回它 - 该方法无法在返回之前释放该对象,因为这样做导致返回一个deallocted对象.

- (Test *) createNewTest 
{
    Test *newInstance = [[Test alloc] init];
    [newInstance release];
    return newInstance; // deallocted object returned.
}
Run Code Online (Sandbox Code Playgroud)

相反,我应该使用autorelease:

由NSObject定义的自动释放方法标记接收器以便稍后释放

我的问题是:如果要在稍后发布该对象,我怎么知道它何时被释放?

- (Test *) createNewTest 
{
    Test *newInstance = [[test alloc] init];
    [newInstance autorelease];
    return newInstance;
}

- (void) runIt
{
    Test *myInstance = [self createNewTest];
    // when is myInstance released?? and thereby not valid to my function anymore?
}
Run Code Online (Sandbox Code Playgroud)

runIt如果我不知道何时发生自动释放,我怎样才能安全地在我的方法中使用返回的自动释放对象?我应该保留由createNewTest?返回的对象吗?或者我可以在runIt …

iphone cocoa-touch objective-c ios

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

UINavigationBar自定义过渡动画

我使用以下协议在视图控制器之间创建了自定义转换:

UIViewControllerAnimatedTransitioningUIViewControllerTransitioningDelegate

是否可以使用默认UINavigationBar值为标题创建自定义过渡,现在它们只是在视图控制器之间交叉淡入淡出,或者我是否必须从头开始构建自己的导航栏视图?

uinavigationbar uiviewcontroller uikit ios

10
推荐指数
1
解决办法
5849
查看次数

Torrent DHT udp

我试图访问Torrent DHT网络,我很难搞清楚如何访问DHT中的"入口"节点.

Bittorent客户端的DHT如何"自举"?

描述了几个标准入口节点可以使用在端口6881(UDP)上运行的router.bittorrent.com和router.utorrent.com.AND http://www.bittorrent.org/beps/bep_0005.html描述了如何与DHT服务器交互的协议.

但是,如果我发送一个简单的UDP消息到router.utorrent.com:6881,我怎么知道哪些端口消息将被发回给我以回应我的请求?我试着在发送到6881的同一端口上收听消息,但我什么都没收到.

这些入口点是限于他们自己的客户端(uTorrent)还是任何第三方客户端都可以使用他们的"路由器"?

bittorrent dht

9
推荐指数
1
解决办法
4236
查看次数

iPhone nslog"EXC_BAD_ACCESS"

我试图使用NSLog来打印控制台消息.问题是有时我在调用时收到"EXC_BAD_ACCESS"错误

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"Working test %d", toInterfaceOrientation);
NSLog(@"EXC_BAD_ACCESS %@", toInterfaceOrientation);
}
Run Code Online (Sandbox Code Playgroud)

在这里,我只想看看传递给函数的参数包含什么.第一个NSLog工作正常.第二个导致"EXC_BAD_ACCESS",我不明白为什么?

iphone

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

计算两个xy点之间的四边形曲线

我有两个(x,y)点开始和结束.我想从头到尾制作动画,但不是采用线性方式,而是想创建一个弯曲的路径.

我很确定我不是在寻找缓和因为我不想影响动画速度,我只想计算弯曲路径.

我发现我需要某种控制点,如下图所示:

在此输入图像描述

但我不知道如何实现它.我很想创建一个采用以下参数的函数

function calculateXY(start, end, controlpoint, percentage);
Run Code Online (Sandbox Code Playgroud)

其中百分比是0到100%之间的数字,其中0表示返回起始位置,100%表示结束位置.

解决方案不需要在Objective-C中,它可以是任何编程语言.我只是无法理解数学:)

java math animation ios

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

为什么GetHashCode()很重要?

我试图了解object.GetHashCode()它的用途.我读到集合使用它来唯一地标识密钥.但我想测试一下,结果不是我的预期.

struct Animal
{
    public string Name { get; set; }
    public int Age { get; set; }

    public Animal(string name, int age) : this()
    {
        Name = name;
        Age = age;
    }

    public override int GetHashCode()
    {
        return Age.GetHashCode();
    }
}

object doggy = new Animal("Dog", 25);
object cat = new Animal("Cat", 25);

Hashtable table = new Hashtable();
table.Add(doggy, "Dog");
table.Add(cat, "Cat");

Console.WriteLine("{0}", table[cat]);
Console.WriteLine("{0}", table[doggy]);
Run Code Online (Sandbox Code Playgroud)

我原以为"猫"会覆盖"狗"或某种错误,告诉我"钥匙已存在"但输出是

"猫狗"

.net c#

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

UIPanGestureRecognizer距离

是否有可能改变UIPanGestureRecognizer触发之前的距离?,当前实现似乎在触发之前有5-10像素的距离边距,如果可能的话我想降低它.

原因是我使用与UIPanGestureRecognizer组合UIRotationGestureRecognizer来改变对象的旋转,UIPanGestureRecognizer由于距离边距不会立即旋转,因此第一次旋转更新将不会平滑(因为它将从0变为类似5度)

iphone ios

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

调整UITableView高度,并保持在底部滚动

我试图用动画调整tableview的高度,它可以通过动画tableview的frame.size.height来正常工作.

问题是,我有一个200px高度的桌面视图并滚动到底部,我想将其设置为100px的动画,我运行一个简单的

[UIView animateWithDuration:0.245f animations:^{
 CGRect frame = tableview.frame;
 frame.size.height = 100.f;
 tableview.frame = frame;
}];
Run Code Online (Sandbox Code Playgroud)

这工作正常,但在我调整大小后,它不再滚动到tableview的底部.我希望tableview在动画时始终在底部滚动.我尝试了许多不同的东西,如打电话

[tablview scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
Run Code Online (Sandbox Code Playgroud)

在我开始调整大小动画之前/之后,但我还没有设法让它们100%同步.有没有办法调整tableview的大小,而tableview的底部显示scrollview的最后一个元素.

ios

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