当尝试在Swift 2.0中使用MKDrectionsRequest时,我收到错误:
'类型'MKDirectionsRequest'的值为没有成员'setSource'
我的代码如下所示:
#include<cstdlib>
#include<memory>
template<size_t SIZE> class Data { };
template<size_t SIZE>
class Generator {
public:
const static size_t gsize = SIZE;
using GData = Data<SIZE>;
static Data<SIZE> generate() { };
};
template<size_t SIZE>
class BasePseudoRandom {
public:
virtual Data<SIZE> generate() = 0;
};
template <size_t SIZE, class Gen>
class ConcretePseudoRandom: public BasePseudoRandom<Gen::gsize> {
public:
typename Gen::GData generate() { return Gen::generate(); }
};
class Factory {
public:
template<class Gen>
static std::shared_ptr<BasePseudoRandom<Gen::gsize>> create(Gen*) {
return std::make_shared<ConcretePseudoRandom<Gen::gsize, Gen>>();
}
};
int main() {
Generator<16> gen;
std::shared_ptr<BasePseudoRandom<16>> pr = Factory::create(&gen);
pr->generate();
}
仅供参考:我甚至不需要实际的指示,只需要估计的行驶时间和距离,所以如果还有其他方法可以让我知道。谢谢。
答案 0 :(得分:3)
您需要将这些值分配给MKDirectionsRequest
的{{1}}属性:
source
同样适用于myRouteRequest.source = MKMapItem.mapItemForCurrentLocation()
:
destination
此外,你有一个拼写错误:
myRouteRequest.destination = MKMapItem(placemark: myPlacemark)
应该是:
myrouteRequest.transportType = .Automobile
至于获得估计的旅行时间和距离:
我们需要先创建路线请求:
myRouteRequest.transportType = .Automobile
//Capital "R" is probably what you wanted to mean.