iOS开发-------地图定位显示周围微博(CLLocationManager 定位管理)

本文主要是介绍iOS开发-------地图定位显示周围微博(CLLocationManager 定位管理),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

       上一篇说到如何给一个固定的位置在地图上显示,但是手机端的定位肯定不是这样的,而是需要随着我们的位置变化而定位,所以就需要到了这一篇中的一个类CLLocationManager(定位管理器),看到manager的第一感觉,会不会是个单例,但这一个类不是一个单例,但起着和单例一样作用,因为它所指向的内存就是手机内部负责定位的组件,而这个硬件组件的地址是唯一的,所以alloc init之后,所得到的地址是一样的。话不多讲,代码以及视图才是王道。


源码的GitHub:https://github.com/YRunIntoLove/LocationPractise


      相比于上一篇文章中的weiboManager中请求数据的方法,昨天进行了相应的优化,优化只不过是对参数的要求更加简洁,毕竟逻辑层越简单越好,数据层的处理麻烦点不是问题,model类没有发生变化,方法修改如下:

/***  获取某个位置的周边微博**  @param access_token 用的token值*  @param myLocation   当前的位置*  @param count        获取数量*  @param b            获取的微博列表*/
-(void)getWeiboNearByTimeLineWithToken:(NSString *)access_token WithLocation:(CLLocationCoordinate2D)myLocation Count:(NSInteger)count BlockHandle:(WBM)b
{//创建参数字典NSDictionary * parameterDict = @{@"access_token":access_token,@"lat":[NSString stringWithFormat:@"%lf",myLocation.latitude],@"long":[NSString stringWithFormat:@"%lf",myLocation.longitude],@"count":[NSString stringWithFormat:@"%ld",count]};//开始请求[self.operationManager GET:nearby_timeLine parameters:parameterDict success:^void(AFHTTPRequestOperation * operation, NSData * data) {NSError * error;//创建一个字典接收数据NSDictionary * resultDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error];//接收数组NSArray * weiboArray = resultDict[@"statuses"];//创建一个可变数组,存储最后的结果NSMutableArray * resultArray = [NSMutableArray array];//开始遍历,并且添加数据for (NSDictionary * tempDict in weiboArray){//创建一个微博模型Weibo * weibo = [[Weibo alloc]init];//开始赋值weibo.userName = tempDict[@"user"][@"name"];weibo.weiboText = tempDict[@"text"];//为坐标赋值NSString * lat = tempDict[@"geo"][@"coordinates"][0];

这篇关于iOS开发-------地图定位显示周围微博(CLLocationManager 定位管理)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/242967

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优