HMDT BOOKS:HMDT JOURNAL Vol.006

HOME > PRODUCTS > HMDT BOOKS > HMDT JOURNAL Vol.006

ここでは、書籍の内容の一部を紹介しています。本文をお読みなる場合は、HMDT BOOKSアプリケーションから購入してください。

HMDT JOURNAL Vol.006 - 書籍内容紹介

2012年3月30日配信

たのしいiPhoneプログラミング 第6回 地図アプリを拡張しよう!

enjoy.png

いまから始めるiPhoneプログラミング!プログラミングが初めての人でもできるように、一歩一歩進んでいく連載だ。

今回は、前回作った地図アプリをちょっと拡張してみるよ。現在地への移動や、地図のタイプの切り替えを実装しよう。

■地図アプリのユーザインタフェースを拡張しよう!

前回は、地図アプリを作ってみたよね。Interface Builder でペタペタと部品を貼付けるだけで、それなりに動く地図アプリができた。今回はそれを拡張していこう!

何をやるかというと、まずは地図のタイプを切り替えられるようにしよう。前回は、Interface Builderのインスペクタを使って切り替えたよね。今回は、これをユーザインタフェースから行えるようにするんだ。そしてもう1つ、現在地に移動するボタンを追加しよう。地図のどこを表示していても、そのボタンを押せば現在地に移動してくれるボタンだ。…

■アウトレットとアクションを追加しよう!

ユーザインタフェースのレイアウトが終わったら、次はアウトレットとアクションの追加だぜ! この流れは、第3回で「Tweet」アプリを作ったときと同じだね。

ところで、このアウトレットとアクションって、結局なんだったんだろう? 以前はさらりと流したこの質問。今なら答える事ができる。なんでかっていうと、Objective-Cの文法を説明したからだ。Objective-Cの用語を使って、こいつらの実体は何か、ということを説明できる。…

■アクションメソッドを実装しよう!

さて、ここまでの作業内容を確認しよう。まずは、ViewController.hファイル。ヘッダファイルの方だ。このファイルは、現在リスト1.1のようになっているはずだ。太字で示した、2つのアウトレットの行と、2つのアクションの行が追加された状態だ。

そして、実装ファイルであるViewController.mの方にも変化があるはずだ。「@synthesize」で始まる行と、「IBAction」が含まれている行が追加されている。…

Keywords: UINavigationBar、UISegmentedControl、MKMapView、CLLocationCoordinate2D、centerCoordinate、MKUserLocation、userLocation、mapType、setCenterCoordinate:aniamted:

新Dynamic Objective-C 第3回:ARC(3) ARCの実現手法を知る

arc.png

Objective-Cの動的な特性をソースコードレベルから解き明かすのが、Dynamic Objective-Cの連載だ。

ARC最後の回は、ARCがどのように実現されているのか、調べてみよう。コンパイルされたソースコードのアセンブリ言語を読み解くことで解析する。

■ARCでのアセンブリ

ARCは、コンパイル時にメモリ管理を行う、という方針を持った技術だ。であるならば、ARCがどのように作用するのかを正確に理解するのであれば、コンパイラが吐き出すアウトップを確認するのが正道である。

そこで今回は、clangコンパイラが生成するアセンブリコードを見ながら、ARCの機能を検証することにしよう。どのようにして、自動的な参照管理が行われているのか、実地から理解する。…

■__strong修飾子の実現

では、ARCが有効なときの、アセンブリ出力結果を確認していこう。

まずは、基本的なソースコードをコンパイルしてみる。…

■__weak修飾子の実現

次は、__weak修飾子について調べてみよう。まずは、単純に__weakの変数からオブジェクトを参照してみる。

__weakを指定した変数、weakObj を宣言した。この変数に、objを代入する。…

Keywords: Objective-C、ARC、プリプロセッサ、プリプロセス、コンパイラ、コンパイル、アセンブラ、アセンブル、objc_release、objc_retainAutoreleasedReturnValue、objc_retain、objc_retainAutorelease、objc_retainAutoreleaseReturnValue、zeroing weak reference、objc_storeWeak、objc_loadWeak、objc_destroyWeak

フォントとコードの話 第2回:グリフ

font.png

iOSおよびOS Xで、フォントと文字コードのプログラミングにまつわる四方山話をしようか。

今回はフォントのプログラミングでは避けては通れない、グリフの話をするよ。

■グリフって何?

フォントを使ったプログラミングの話をすると、絶対避けては通れないのが「グリフ」の話題。今回は、グリフのことを中心に話を進めよう。

この、グリフって知ってる? あんまり日常生活で使わない言葉だよね。えーっと、グリフ、グリフ、、、おっ、ヒエログリフ! 確か、エジプトで使われていた象形文字のこと。これがグリフ? 実は、当たらずとも遠からじ。…

■日本語のためのAdobe-Japan1

グリフはフォント毎に好きなのを入れていいよ、ってことになっている。でも、それだけだとアレなので、こういったグリフを準備しましょう、っていう規格も存在する。

日本語のためのグリフの規格として現在主力なのは、「Adobe-Japan1」って呼ばれているやつ。名前の通り、Adobe社が定義している規格だ。バージョンがいくつかあって、現時点での最新はAdobe-Japan1-6だ(2004年に公開)。…

■グリフの取得

じゃ、ここからはプログラミングの話だ。グリフを使ったプログラミングの話をしよう。

まずは、グリフを表す型。これは、Core Graphics で定義されている、CGGlyphってやつを使う。。…

Keywords: グリフ、旧字体、異体字、グリフID、Adobe-Japan1、ヒラギノのStdとStdNとProとProN、CGGlyph、CGFontGetGlyphWithGlyphName、CGFontCopyGlyphNameForGlyph、グリフ名、CTFontGetGlyphsForCharacters

Copyrights © 2012 HMDT Co., Ltd. All rights reserved.

HMDTアプリケーション

icon512.png
HMDT BOOKS