Swift�̃J�X�^���N���X�̍����\�\�v���g�R���A�T�u�N���X�A�C�j�V�����C�U�[�A�^�C�v�v���p�e�B���\�b�h�̃I�[�o�[���C�h�A�f���Q�[�g�ɂ‚��Ē��߂̍쐬�Ŋw���FiPhone 6�^6 Plus�A�v���J������i5�j�i1/4 �y�[�W�j

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

» 2015�N04��07�� 05��00�� ���J
[�����^���C�N���X���\�b�h�������]
uiPhone 6^6 PlusAvJṽCfbNX

�A�ږڎ�

�@�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

�}1�@iOS�V�~�����[�^�[�iiPhone 4s�j�̎��s���ʁi�O��L���̎��_�j

MapView��̃I�u�W�F�N�g�ɂ‚��Đ�������

�@���̑O�ɁAMapView�Ŏg�p����I�u�W�F�N�g�ɂ‚��Đ������Ă݂܂��B

�u���߁v�ɂ‚���

�@����܂ł̘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

���߂�\�����邽�߂ɕK�v�ȃI�u�W�F�N�g

�@�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

  • ���߃I�u�W�F�N�g��PHAsset�i�ʐ^�̃��^�f�[�^��ێ�����I�u�W�F�N�g�j������������
  • ���߃r���[���J�X�^�}�C�Y������
  • Swift�̃J�X�^���N���X�̍쐬�菇�ɂ‚��ĐG��Ă�������
���� ����쐬����N���X
���߃I�u�W�F�N�g PhotoAnnotation
���߃r���[ PhotoAnnotationView

�J�X�^���N���X�Œn�}�ɒ��߂�lj������܂��ȗ���

�@�J�X�^���̒��߃I�u�W�F�N�g�E���߃r���[���g�p���āA�n�}�ɒ��߂�lj������܂��ȗ���͈ȉ��̒ʂ�ł��B

  1. ���߃I�u�W�F�N�g���쐬���AMapView�ɒlj�����
  2. ���߃r���[���K�v�ɂȂ�ƁAMapView�͂��̃f���Q�[�g�I�u�W�F�N�g�́umapView:viewForAnnotation:���\�b�h�v���Ăяo���i���߃r���[�����•\�����邩�́AMapView�����f����j
  3. �umapView:viewForAnnotation:���\�b�h�v���ɋL�q�����u���߃r���[�̃Z�b�g�A�b�v�ƍX�V�����v���s����

�@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)
            }
        }
    })
}
�O���prepareAnnotations���\�b�h

�@����̓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

Swift�̃J�X�^���N���X�̍쐬

�@�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

�@�@�@�@�@�@ 1|2|3|4 ���̃y�[�W��

Copyright © ITmedia, Inc. All Rights Reserved.

'; }; BodyAdGAMWithCCE.prototype = Object.create(BodyAdContent.prototype); BodyAdGAMWithCCE.EVENT_INIT = 'init'; BodyAdGAMWithCCE.EVENT_READY = 'ready'; /** * AdContent �̏������Ɨ��p���� */ BodyAdGAMWithCCE.prototype.init = function () { Logger.writeln('BodyAdGAMWithCCE.prototype.init'); this.dispatchEvent(new CustomEvent(BodyAdGAMWithCCE.EVENT_INIT)); }; /** * �L���g�� GAM ���N�G�X�g */ BodyAdGAMWithCCE.prototype.activate = function () { refreshGam('InArtSpecialLink'); this.dispatchEvent(new CustomEvent(BodyAdGAMWithCCE.EVENT_READY)); }; // global reference window.itm = itm; //entry point const build = function( e ) { BodyAdEventBase.polyfill(); const bodyAdManager = BodyAdManager.getInstance(); bodyAdManager.addEventListener(BodyAdManager.EVENTS.READY, function (ev) { bodyAdManager.loadAdvertise(); }); bodyAdManager.init(); } build(); })();

�A�C�e�B���f�B�A����̂��m�点

�X�|���T�[����̂��m�点PR

���ڂ̃e�[�}

lɗȂA{ŌZLeBu_iCYv
4AI by IT - AIAAA
Microsoft  WindowsőO2025
AI for GWjAO
[R[h^m[R[h Zg by IT - ITGWjArWlX̒SŊ􂷂gD
Cloud Native Central by IT - XP[uȔ\͂gD
�V�X�e���J���m�E�n�E �y�����i�r�zPR
���Ȃ��ɂ������߂̋L��PR

RSS�ɂ‚���

�A�C�e�B���f�B�AID�ɂ‚���

���[���}�K�W���o�^

��IT�̃��[���}�K�W���́A �������A���ׂĖ����ł��B���Ѓ��[���}�K�W�������w�ǂ��������B