如何使用相机谷歌地图 xcode 移动标记(图钉)

2024-04-28

我在我的应用程序中使用谷歌地图 API。我的应用程序中有两个按钮。第一个按钮在我的地图中添加一个标记(图钉)。 现在我想要第二个按钮将添加的图钉水平移动到页面中心,并使其移动到页面顶部的 25%。我希望相机(用户正在查看的区域)也移动它。 这是我的代码:

@implementation ViewController
{
    double latitudes;
    double longitudes;
    CLLocationManager *locationManager;
    GMSMapView *mapView_;
}
- (void)viewDidLoad
{
    [super viewDidLoad];
    locationManager = [[CLLocationManager alloc] init];
    [self GetMyLocation];

    UIButton *pinButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    pinButton.frame = CGRectMake(self.view.frame.size.width-80,self.view.frame.size.height-80, 60, 60);
    [pinButton setTitle:@"Self" forState:UIControlStateNormal];
    [pinButton setBackgroundColor:[UIColor whiteColor]];
    [pinButton addTarget:self action:@selector(ShowMyLocation:)     forControlEvents:UIControlEventTouchUpInside];

    UIButton *add = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    add.frame = CGRectMake(20,self.view.frame.size.height-80, 60, 60);
    [add setTitle:@"add" forState:UIControlStateNormal];
    [add setBackgroundColor:[UIColor whiteColor]];
    [add addTarget:self action:@selector(Move:)     forControlEvents:UIControlEventTouchUpInside];

    // Create a GMSCameraPosition that tells the map to display the
    // nokte mohem ine ke baadan ye logitude & latitude default ezafe kon chon shaiad tuie ye sharaiete tokhmi ke hamid esrar dare va ye kasi mariz bood dastresie GPS ro ghat kard

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:latitudes longitude:longitudes zoom:14];
    mapView_ = [GMSMapView mapWithFrame:CGRectZero  camera:camera];
    mapView_.myLocationEnabled = YES;
    [mapView_ setMapType:kGMSTypeNormal];
    self.view = mapView_;
    [mapView_ addSubview:pinButton];
    [mapView_ addSubview:add];

}
- (IBAction)Move:(id)sender{
    //move marker place
}
- (IBAction)ShowMyLocation:(id)sender{

    GMSMarker *marker = [[GMSMarker alloc] init];
    marker.position = CLLocationCoordinate2DMake(coor.latitude,coor.longitude);
    marker.title = @"I'm Here";
    marker.snippet = @"Rahnova Co.";
    marker.appearAnimation = kGMSMarkerAnimationPop;
    marker.map = mapView_;
}
- (void) GetMyLocation{
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    [locationManager startUpdatingLocation];
}
#pragma mark - CLLocationManagerDelegate
- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{
    NSLog(@"didFailWithError: %@", error);
    UIAlertView *errorAlert = [[UIAlertView alloc]
                               initWithTitle:@"Error" message:@"Failed to Get Your Location" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [errorAlert show];
}
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
    CLLocation *currentLocation = newLocation;
    if (currentLocation != nil) {
        longitudes = currentLocation.coordinate.longitude;
        latitudes = currentLocation.coordinate.latitude;
    }
    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:latitudes longitude:longitudes zoom:14];
    [mapView_ animateToCameraPosition:camera];
}

试试这个代码:-

在你的标题上.M实施文件,你必须实施GMSMapViewDelegate.

@interface YourViewController ()<GMSMapViewDelegate>

Inside viewDidLoad,您必须将mapView委托设置为self。

mapView_.delegate=self;

对于委托方法:-

-(BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker{
 [mapView animateToLocation:marker.position];
 return YES;
}

当您点击它时,它将帮助您转到标记位置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用相机谷歌地图 xcode 移动标记(图钉) 的相关文章

  • iOS 13 UIActivityViewController 在图像保存后自动呈现以前的 VC

    我正在尝试实现 将图像保存到库 功能 然后返回到当前视图控制器 但在新的 iOS 13 上 它会返回到呈现当前视图控制器的视图控制器 PHPhotoLibrary requestAuthorization status PHAuthoriz
  • UIButton 触摸事件落入底层视图

    我创建了一个小UIView其中包含两个UIButton是 视图响应UITapGesture事件 按钮应该响应TouchUpInside 但是当我点击按钮时 响应者是底层视图 并且点击手势选择器被触发 寻找意见或建议 您可以修改橙色视图中响应
  • 如果部署目标 < 基础 sdk,如何检查是否使用了不可用的方法?

    我想知道当部署目标低于基础 SDK 时 您如何检查代码是否不调用不可用的方法 可以在 SDK 等于部署目标的设备上运行应用程序 但我搜索一种更 自动 的方式 任何想法 问候 昆汀 最简单的方法是使用 IPHONE OS VERSION MA
  • 我如何知道我的 iOS 应用程序的蜂窝网络访问是否被禁用?

    我有一个 iOS 应用程序 它在应用程序启动时发出一些小型网络请求 资源更新等 如果用户在 iOS 设置中关闭应用程序的蜂窝网络访问 他们每次启动时都会收到 iOS 的有关网络使用情况的提示 有没有办法以编程方式知道此应用程序的蜂窝数据已被
  • iOS 中输入字段显示不同大小

    我有一个带有背景和固定宽度 高度的输入字段 它在我桌面上的所有浏览器中看起来都很好 但由于某种原因 它看起来更大iPad and iPhone 我在 CSS 中尝试了一些技巧 但到目前为止没有任何效果 width 120px importa
  • 更快地估计 CollectionView 中单元格高度的方法

    我的 UICollectionView 中有一个无限滚动 我注意到我估计单元格高度的方式是我的集合视图的瓶颈 我滚动收藏视图的次数越多 它就会导致一些长时间的延迟 有没有更好的方法来估计单元格的高度 这些单元格有不同的高度 因为我有一个UI
  • 在实现文件中声明接口(Objective-C)

    在上一个版本的 xCode 4 3 中 我看到了预定义模板 例如我们的 Master Detail 模板 其中接口声明是在 m 文件中进行的 例如 在文件 MyFile h 中有 interface MyFile property nona
  • 多次显示admob插页式广告怎么办?

    我有一个小型游戏应用程序 它有一个故事板 里面创建了像开始菜单 游戏区域 分数这样的场景 我在其中添加了 admob 横幅视图和插页式广告 我的横幅视图工作正常 但我的插页式广告只能工作一次 我在 viewdidload 上加载插页式广告
  • 将 NSData 视频文件合并为一个视频文件

    我有一堆视频文件想要合并成一个视频文件 我正在使用 NSMutableData 来完成该任务 NSMutableData concatenatedData NSMutableData alloc init for int i 0 i lt
  • 在当前参数寄存器中找到的选择器名称:isEqual:

    我正在寻求一些帮助来消除 OSX 应用程序中的一个我无法解决的错误 我收到以下记录错误 Selector name found in current argument registers isEqual 但我一生都无法弄清楚它来自哪里 因为
  • IOS Swift 从数组中搜索表

    我刚刚开始学习 swift 我正在研究 tableview 和 searchbar 功能 下面我有我的数组 它是水果列表 var fruits String Apple Green Pear Green Banana Yellow Oran
  • 无法发出桥接标头的预编译标头

    我从 GitHub 下载了一个项目 然后 pod 了以下文件 其中一些文件是由 OBJ C 编写的 我使用了桥接头 pod SnapKit pod MJRefresh pod Alamofire pod Kingfisher pod MBP
  • 迁移大型 Core Data 数据库崩溃

    我有一个将产品存储在核心数据文件中的应用程序 这些产品包括作为 可转换 数据的图像 现在我尝试使用轻量级迁移添加一些属性 当我使用一个小型数据库对其进行测试时 它运行良好 但当我使用一个接近 500 MB 的大型数据库时 应用程序通常会因内
  • Objective C - ARC - 何时使用@autoreleasepool

    我读了一些关于 ARC 的文章 看到了这个 interface Address NSObject public NSString city end implementation Address Address init NSString c
  • 滚动视图下的iOS swift 4 imageview:双击缩小

    我已经应用了图像视图来通过捏合来放大 缩小 那很容易 当在图像视图上应用双击时 无法检测到选择方法 我使用 Xcode 9 和 swift 4 您能告诉我滚动视图是否应该应用双击手势吗 var previewImage UIImage ni
  • 如何区分iphone4和iphone 3

    我正在尝试使用 cocos2d 引擎为 iphone 构建游戏 我想知道如何区分用户使用的是 iphone 4 还是 iphone 3 因为我想为 iphone4 加载高分辨率图形 为 iphone 3 加载低分辨率图形 我知道我是否在以下
  • 如何获取 ios 日期数组中的所有星期日

    我只想要一个数组 它以 NSDate 的形式包含一年中的所有星期一 但速度很快 我在 Objective c 中使用以下代码 但不知道如何在 swift 中使用它 NSDate pickerDate NSDate date NSLog pi
  • 谷歌地图从邮政编码获取纬度和经度

    是否可以使用 google api 仅传递邮政编码来获取经度和纬度 感谢您的任何提示 再见 只需创建一个实例google maps Geocoder http code google com apis maps documentation
  • 从 Xcode 更改按钮文本?

    我有一个 IBAction 连接到 Interface Builder 中的一个按钮 是否可以在运行时从我的代码中更改按钮 在 IB 中 上的文本 如果您的代码中有一个连接到某个操作的按钮 则无需实例变量即可更改标题 例如 如果按钮设置为以
  • iOS Swift 中断键盘事件

    我在拦截键盘事件时遇到问题 我已将我的 iOS 与 SteelSeries Free 游戏手柄控制器 连接 当连接到 iOS 时 它将被检测为蓝牙键盘 这是在我打开Notes时测试的 按下游戏手柄上的任何按钮都会写一个字母 我需要拦截此按钮

随机推荐

  • 为什么 Blazor 模板使用工厂来创建 HttpClient 实例

    当处置HttpClient 可能会遇到 套接字耗尽 的情况problem https learn microsoft com en us dotnet architecture microservices implement resilie
  • 是否存在用于编辑 doxygen 评论的“wiki”? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在开发一个相当大的开源 RTS 游戏引擎 Spring http springrts com 我最近
  • 创建 git 分支并将其合并到史诗分支

    我正在开发一个项目 例如 SO bubbleSort 我需要创建一个名为 feature version 1 的史诗分支 因此从这个史诗分支中很少有开发人员进行开发 因此为此 他们需要创建一个将分支与史诗分支分开 我的问题是我们如何合并这些
  • 詹金斯总体/阅读权限

    当在 URL 中打开我的 Jenkins 时 我似乎无法登录 它会抛出消息 用户缺少总体 读取权限 我已经尝试过answer https stackoverflow com questions 6988849 reset jenkins c
  • 具有透明框架和不透明边缘的图例

    设置图例透明度时 plt legend framealpha 0 5 它会影响背景和边缘 如何仅将透明度应用于背景而不应用于边缘 我努力了 plt legend edgecolor 0 0 0 1 facecolor 1 1 1 0 1 我
  • 使用递归获取嵌套对象中的所有父对象

    我有以下对象 const object id 1 name a children id 2 name b children id 3 name c id 4 name d 我需要一个接受对象和最后一个子对象的
  • 将 Fabric env.hosts 字符串作为变量传递在函数中不起作用

    将 Fabric env hosts 字符串作为变量传递在函数中不起作用 demo py usr bin env python from fabric api import env run def deploy hosts command
  • 如何在 Flutter gold test 上检查字体文本

    我正在做一个package https pub dev packages mongol用于垂直蒙古文 我有一个自定义小部件 需要特殊字体才能显示 我正在尝试编写一个测试来显示蒙古文文本已正确呈现 在模拟器上看起来像这样 但黄金文件看起来像这
  • RStudio Shiny renderDataTable 字体大小

    我正在尝试减小 renderDataTable 中的字体大小 但找不到任何控制字体大小的示例 我读到可以通过 jquery 控制它 但我找不到任何例子 任何指导都会非常有帮助 因为我正在使用闪亮的 ioslides 演示文稿 并且我的数据表
  • Spring Security 帐户锁定

    您好 我有一个使用 Spring webflow 和 Spring Security 的 j2ee 应用程序 我想实现帐户锁定 以便在密码失败 3 次后帐户将被锁定 我该如何实现这个 你能用一个认证失败处理程序 http static sp
  • 在列名中使用保留字

    这是一些简单的代码 但我只是不知道为什么我不能使用这个词作为表的实体 CREATE TABLE IF NOT EXISTS users key INT PRIMARY KEY NOT NULL AUTO INCREMENT username
  • Powershell 按多个属性分组

    我试图确定是否有更简单的方法来编写 Powershell 函数 该函数按多个属性对数组进行分组并对组中指定的属性求和 类似于以下内容 Ungrouped data ID ID2 Value A A1 100 A A2 200 A A2 30
  • Android Oreo 上的操作系统阻止了地理围栏转换 PendingIntent

    这只发生在 Android Oreo 上 我正在使用 Play 服务 11 4 2 我正在使用 GeofencingClient 和 addGeofences 方法将地理围栏注册到正在处理地理围栏转换的 IntentService 中 并将
  • 在 Javascript 中获取类的所有实例

    我以为这个问题已经有了答案 但我似乎找不到答案 如何在 Javascript 中的此类的所有实例上运行特定的类方法 这必须在我不知道实例名称的情况下完成 我想我可以在类中使用某种静态变量来存储所有实例 但这在 JS 中似乎不存在 那么如何在
  • 在 Angular dart 上设置全局 Http 请求标头

    如何配置 Http 服务 向调用添加标头 我尝试以下方法 class GlobalHttpHeaders static setup Injector inj HttpDefaultHeaders http inj get HttpDefau
  • 如何在表单数组中添加无效的表单控件而不影响其功能

    我想创建一个动态表单 将表单控件 必需的表单控件 添加到表单数组中 表单控件无效 因为它需要由用户填写 为空 但是当我添加表单控件时 出现错误 ExpressionChangedAfterItHasBeenCheckedError 表达式在
  • 如何使用 Moq 返回数据或值列表?

    谁能告诉我如何使用 Moq 框架使用模拟对象返回数据列表并将返回的数据列表分配给另一个 List 变量 public class SomeClass public virtual List
  • 如何在 Python 3.2 程序中优雅地包含 Python 3.3 from None 异常语法?

    我正在尝试重新引发异常 以便为用户提供有关实际错误的更好信息 Python 3 3 包括PEP 409 http www python org dev peps pep 0409 它添加了raise NewException from No
  • 获取 Bash 和 KornShell (ksh) 中命令的退出代码

    我想写这样的代码 command some command safeRunCommand command safeRunCommand cmnd 1 cmnd if 0 then printf Error when executing co
  • 如何使用相机谷歌地图 xcode 移动标记(图钉)

    我在我的应用程序中使用谷歌地图 API 我的应用程序中有两个按钮 第一个按钮在我的地图中添加一个标记 图钉 现在我想要第二个按钮将添加的图钉水平移动到页面中心 并使其移动到页面顶部的 25 我希望相机 用户正在查看的区域 也移动它 这是我的