暑期项目开发实训 Day10
来源:互联网 发布:淘宝淘客怎么设置 编辑:程序博客网 时间:2024/05/29 11:10
今天顺利完成了Demo 3,完结撒花~~~
我做了如下工作:
05 Map View
06 Photo Picker
07 Finished
首先看Map View:
Bar上有两个item: Locations和User。
其中Locations记录的是历史定位,User记录的是当前定位
(我是这么理解的,但是因为模拟器上定位有误,所有位置都是同一个坐标,因此不知道这样理解对不对)
我们希望:
The pins are now green and the callout has a custom button.
我们还希望:Map所在的navigation bar可以和模拟器的状态栏无缝链接。(**)
实现代码如下:
extension MapViewController: MKMapViewDelegate { func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? { // 1 guard annotation is Location else { return nil } // 2 let identifier = "Location" var annotationView = mapView.dequeueReusableAnnotationView(withIdentifier: identifier) if annotationView == nil { let pinView = MKPinAnnotationView(annotation: annotation,reuseIdentifier: identifier) // 3 pinView.isEnabled = true pinView.canShowCallout = true pinView.animatesDrop = false pinView.pinTintColor = UIColor(red: 0.32, green: 0.82, blue: 0.4, alpha: 1) // 4 let rightButton = UIButton(type: .detailDisclosure) rightButton.addTarget(self, action: #selector(showLocationDetails), for: .touchUpInside) pinView.rightCalloutAccessoryView = rightButton annotationView = pinView } if let annotationView = annotationView { annotationView.annotation = annotation // 5 let button = annotationView.rightCalloutAccessoryView as! UIButton if let index = locations.index(of: annotation as! Location) { button.tag = index } } return annotationView }
1. 在info.plist中加入项,开启权限
2. 开启权限后,初次使用时询问如下:
3. Add Photo,Delete Photo, Edit Photo, Cell中添加Image View用来显示照片。
最后是界面优化:
1. Aspect Fit 和 Aspect Fill 的区别:
2. 原图片像素过高,势必会造成存储的浪费,我们需要对原图片形变后再存入ImageView
3. 将图片以圆形边框呈现
4. 将背景调成夜间黑色
5. tap location的开始动画
遇到的问题:
tap location 和 get location 指向了同一个功能。
原因: 没有设置delegate.
Demo4 开启了 20/290 的进度
------- 凌晨MARK,醒来再补
阅读全文
0 0
- 暑期项目开发实训 Day10
- 暑期项目开发实训 Day1
- 暑期项目开发实训 Day2
- 暑期项目开发实训 Day3
- 暑期项目开发实训 Day4
- 暑期项目开发实训 Day4
- 暑期项目开发实训 Day5
- 暑期项目开发实训 Day6
- 暑期项目开发实训 Day7
- 暑期项目开发实训 Day8
- 暑期项目开发实训 Day9
- 暑期项目开发实训 Day9
- 暑期项目开发实训 Day11
- 暑期项目开发实训 Day12
- 暑期项目开发实训 Day13
- 暑期项目开发实训 Day14
- 暑期项目开发实训 Day15
- 暑期项目开发实训 Day16
- Python程序的交互
- ABAQUS提取截面节点的输出结果
- Java进阶之路——从初级程序员到架构师
- Python注释
- Leetcode 100 Same Tree
- 暑期项目开发实训 Day10
- 二进制字符文件转二进制的3种姿势
- sublime运行python方法
- servlet的方法
- 牛客网_华为机试_004_字符串分割
- 自适应分辨率
- 求一组数的组合的和为一个值的所有情况
- Python数据类型
- Dubbo之——Dubbo Filter实战