iPhone 6�^6 Plus�A�v����Swift����ō쐬���Ă݂����Ƃ������S�Ҍ�����iOS 8�̐V�@�\���g�����A�v���̍������ꂩ�����������A�ځB����́A�O��̋L���Œlj������n�}��́u���߁v���ʐ^�̃T���l�C���ɍ����ւ���ے���Swift�̃J�X�^���N���X�̍쐬�菇�ɂ��ĉ�����܂��B
�@�O��̋L���uOptional�Ȃ�Swift��Objective-C�̈Ⴂ���ӎ�����Photos Framework���g���v�ł́uPhotos Framework�v�̋@�\���g�p���ăt�H�g���C�u��������ʐ^�������o���A�ʐ^���ɂЂ��t�������W�Ƀs����\�����܂����B�܂��ASwift�̓����̈�ł���uOptional�^�v�ɂ��ĉ�����܂����B
�@�}1�͑O��̋L���̎��_�ł�PhotoMap�A�v���̎��s���ʂł��B����͒n�}��̃s����̉摜���ʐ^�̃T���l�C���ɍ����ւ��Ă����܂��B
�@���̑O�ɁAMapView�Ŏg�p����I�u�W�F�N�g�ɂ��Đ������Ă݂܂��B
�@����܂ł̘A�ڂł́A�n�}��̒P��̍��W�ɕ\������R���e���c�̂��Ƃ��u�s���v�ƋL�q���Ă��܂������A�A�b�v�������̃h�L�������g�ł���u�ʒu���ƃ}�b�v�v���O���~���O�K�C�h�v�ɍ��킹�āu���߁v�ƋL�q���邱�Ƃɂ��܂��B
�@���߂��g�p���邱�ƂŁA����̍��W�ʒu��ڗ������A���̏ꏊ�Ɋւ������ł��܂��B
�@�{�A�ڂō쐬����uPhotoMap�v�A�v���̏ꍇ�́A�u�ʐ^�̎B�e�ꏊ�v��\�����邽�߂ɒ��߂��g�p���܂��B
�@�n�}�ɒ��߂�\������ɂ́A����1�ɑ��āu���߃I�u�W�F�N�g�v�u���߃r���[�v��2�̃I�u�W�F�N�g���K�v�ł��B�u�f�[�^���Ǘ�����I�u�W�F�N�g�v�Ɓu�r���[�v���藣����Ă��āA�I�u�W�F�N�g�������悭�Ǘ��ł���悤�ɂȂ��Ă��܂��B
| ���� | ���e | �W���I�ȃN���X |
|---|---|---|
| ���߃I�u�W�F�N�g | ���߂̃f�[�^���Ǘ�����I�u�W�F�N�g | MKPointAnnotation |
| ���߃r���[ | �n�}��ɒ��߂̉��\����`�悷��r���[ | MKPinAnnotationView |
�@�O��̋L���̎����ł́AMKPointAnnotation�����MKPinAnnotationView���g�p���Ă��܂������A����̋L���ł͒��߃I�u�W�F�N�g�E���߃r���[���ɃJ�X�^���N���X���쐬���܂��B���R�͈ȉ��̒ʂ�ł��B
| ���� | ����쐬����N���X |
|---|---|
| ���߃I�u�W�F�N�g | PhotoAnnotation |
| ���߃r���[ | PhotoAnnotationView |
�@�J�X�^���̒��߃I�u�W�F�N�g�E���߃r���[���g�p���āA�n�}�ɒ��߂�lj������܂��ȗ���͈ȉ��̒ʂ�ł��B
�@1.�͑O��L���ŁuprepareAnnotations�v���\�b�h�Ƃ��Ď������������ł��B�t�H�g���C�u����������o����PHAsset���ێ�����ʒu�����g�p���āAMKPointAnnotation��MapView�ɒlj����܂����B
private func prepareAnnotations() {
let fetchResult = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: nil)
fetchResult?.enumerateObjectsUsingBlock ({result, index, stop in
if let asset = result as? PHAsset {
if let location = asset.location {
let annotation = MKPointAnnotation()
annotation.coordinate = location.coordinate
self.mapView.addAnnotation(annotation)
}
}
})
}
�@����̓J�X�^���̒��߃r���[���g�p���Ē��߂̉��\������������̂ŁA����Ɂu2.�v�Ɓu3.�v�̏������K�v�ł��B
�@�Ƃ͂����A����K�v�Ȃ��Ƃ�ViewContoroller�N���X�ɁumapView:viewForAnnotation:���\�b�h�v��lj����A�u���߃r���[�̃Z�b�g�A�b�v�ƍX�V�����v���L�q���邱�Ƃ����ł��̂Ŕ�r�I�ȒP�ł��B
�@�J�X�^���N���X�����ꍇ�́A.swift�t�@�C����lj����ăN���X���`���܂��B���łɂ���N���X�̃T�u�N���X�Ƃ��Ē�`���邱�Ƃ��ł��܂����A�v���g�R�����g���āu����̗p�r�ɍ������N���X�v���`���邱�Ƃ��ł��܂��B
�@�N���X�ɂ͎�ɁA�v���p�e�B�A�C�j�V�����C�U�[�A���\�b�h���K�v�ƂȂ�܂��B�ŏ���import�����g���ꍇ�������Ȃ�܂��B
�@�u�C�j�V�����C�U�[�v�̓N���X���u�������v���邽�߂̃��\�b�h�Łuinit�v�Ƃ������O�ɂȂ�܂��B
�@�ȍ~�APhotoAnnotation��PhotoAnnotationView����̗�Ƃ��ĉ�����܂��B
�A�v���́A�ǂ�����ē����́H �v���O�������ĉ��H�\�\���߂�iPhone�A�v�������l������b�m���܂Ƃ�
iOS�A�v���Ƀt�H�g�V���̋@�\�Ȃǂ�g�ݍ��߂�Creative SDK�̊�b�m���ƃC���X�g�[��
iPhone�A�v���ňʒu���ƒn�}���g�����߂̊�b�m��
�J���Ҏ��_�Ō���A���̃h�f�J���uiPhone 6�^6 Plus�v
�y�}���zXcode 4.5�̎g�������t�@�����X���܂Ƃ�
Android�����i��iOS 7�̐V�@�\�ƊJ����Xcode 5Copyright © ITmedia, Inc. All Rights Reserved.
��IT eBook