进入地图详情页面时,右边“地图”按钮需要区分前一个页面是从哪里进入的。如果直接从mapView里进入,则直接重新建立view即可,若是从其他地方进入的话,那直接pop掉就能进入地图页面。这样做的目的是为了防止页面进入的层次太深,返回时很费事,对用户而言不够友好,而且有点浪费空间。可以按照以下方法判断当前 self 是属于那一个类。
<pre name="code" class="objc"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">// if ([self isKindOfClass:[CMMapViewController class]])</span></span>
<span style="font-size:18px;"> if ([self isKindOfClass:NSClassFromString(@"MapViewController")])
{//[NSClassFromString(@"MapView")]
dvlc.isFromDetailMapView = NO;
}
else
{
dvlc.isFromDetailMapView = YES;
}</span>
注释掉的 if 判断语句需要引入类的头文件,没有注释的那个if语句是不需要引入头文件的。