Safari で Magic Mouse のジェスチャーの調子が悪いときの対処方法

数日前から Safari の動作が遅く,少し気になっていたのだが,通信回線の問題だと思い,あまり気にしていなかった.

だが,Magic Mouse のジャスチャーの度に Safari が固まる症状となったので,
あまり期待せずに PRAM クリアというのを試してみました.

すると,再起動後,Safari がきびきびと動くじゃないですかっ?(゜Д゜)(゜Д゜)(゜Д゜)

ネットでよく紹介されている対象方法ですが,あんまり効果的な方法という実感がなかったんですよね.
過去経験したトラブルって,そんなことぐらいでは対処できないほど,致命的だったりしたので.(笑)

これが原因かな?

問題が出始めた頃の状態としては,Mouse の電源が残り少ない状態(10%以下)となっていました.
Mouse のバッテリーは,少し早めの交換が良いのかもしれません.

PRAMクリアの方法

1. mac を再起動する.
2. すぐに「Command」「Option」「P」「R」の4つのキーを同時に押し続ける.
3. しばらくすると Mac が再起動するので,2度目の起動音が鳴ったのを確認するまで,4つのキーを押し続ける.

iOS9 シミュレータと iOS9 実機で異なる動作に遭遇した件

シミュレータと実機はどうしても処理結果に差が出ることがあります.
例えば,使用しているフォントが違うため,文字列処理まわりとかですね.

理屈では分かってはいても,実機で確認することを忘れていて,あとで「アッ」てことがあります.

先日,UIButton の titleEdgeInsets を調整して,シミュレータでしか確認していなかったため,痛い目にあいました.
iOS9 から新しいフォントが適用されているので,要注意ですね.

ちなみに,UIButton では,
titleEdgeInsets : タイトル位置を調整
imageEdgeInsets : 画像の位置を調整 ができます.

1
2
3
4
5
6
7
// 平行移動をしたい場合は,一方に + (内側に入り込む),反対側に - (外側に出る) を設定する必要があります. 
UIEdgeInsetsMake(0, 100, 0, -100)
 
 
typedef struct UIEdgeInsets {
    CGFloat top, left, bottom, right;  // specify amount to inset (positive) for each of the edges. values can be negative to 'outset'
} UIEdgeInsets;

参考: UIButtonで、画像とタイトルの位置を入れ替える時にハマった話 (UIEdgeInsets)

iTunes Store のアプリ リンク(バッジ)の作成方法

アプリ リンクのバッジ

アプリ リンクのバッジ

このアプリ リンクのバッジってどうやって用意するんだろう?と思っていたんですが,以下のリンクから作成することができます.

Link Maker
https://linkmaker.itunes.apple.com/en-us/

アプリ名を入力すると,バッジ,テキストリンク,スモール・バッジのリンクが作成されます.
便利ですね.

mac で Parallels を使用していて Skype を終了する方法

普段使うマシンが mac のみになって数年がたつが,どうしても windows 版 Excel ファイルを編集する必要があり,mac に Parallels を導入して必要な場合は windows 版 Excel を使用しています.

その際,ずっと気になっていたのが,Paralles を起動するとドックに表示される Skype アイコンの存在.
ドックの Skype アイコンを消す方法が分からず困っていたのだが,ちゃんと調べてみました.(^^)

ドックに表示される Skype アイコン

ドックに表示される Skype アイコン

windows のタスクバーから Skype を終了すれば,ドックから Skype アイコンも消すことができました.
スッキリ.(^^)

windows のランチバーにある Skype を終了する.

windows のランチバーにある Skype を終了する.

Objective-C の新しい表記について

先日,github のライブラリを見ていて知らない表記があったので,メモ.

Objective-Cにおけるinstancetype型について

返却する型が決まっている場合,id などではなくinstancetype を使用した方がいい.
1
2
3
4
5
6
7
8
9
@interface Hoge
+ (id)hoge;
@end
 
    ↓
 
@interface Hoge
+ (instancetype)hoge;
@end

3項演算子の第2項は,省略できる.

NSString *valueString = value ? : @"";

value が値を保持している場合,そのままその値をセット.
nil の場合,@"" をセット.

iOS デバイス解像度について

iOS デバイス解像度について

– 前機種およびiPhone6/6 Plusで全画面表示に必要な解像度,比率は以下のとおり.

– スプラッシュ画像の対応は,iPhone4 以上でも 4種類が必要.

機種 必要 解像度 論理 解像度 ピクセル密度 比率
iPhone 3GS 320 × 480 320 × 480 162 ppi @1x
iPhone5/5S 640 × 1136 320 × 568 326 ppi @2x
iPhone6 750 × 1334 375 x 667 326 ppi @2x
iPhone6 Plus 1242 × 2208 414 x 736 401 ppi @3x

iPhone 6 plus 画像リソースの対応

– iPhone 6 Plus のカタログスペックは,画素数 1,080 × 1,920ピクセルの 401ppi.
– 内部的には、画素数 2,208 × 1,242 ピクセルあるものとして計算し,表示する際に縮小して表示している.
– PhotoShopなどでUIデザインする場合には,1,242 x 2,208ピクセルのサイズで作成するのがよい.

以下に各デバイスの Points, Rendered Pixels, Physical Pixels について分かりやすく,まとめられている.
The Ultimate Guide To iPhone Resolutions

スプラッシュスクリーンについて

– スプラッシュスクリーン ファイル名の数字は,論理解像度の高さ.

Default.png 320 × 480 iPhone
Default@2x.png 640 × 960 iPhoneRetina
Default-568h@2x.png 640 × 1136 iPhone5
Default-667h@2x.png 750 × 1334 iPhone6
Default-736h@3x.png 1242 × 2208 iPhone6 plus
Default-Portrait.png 768 × 1004 iPad縦
Default-Portrait@2x.png 1536 × 2008 iPadRetina縦
Default-Landscape.png 1024 × 748 iPad横
Default-Landscape@2x.png 2048 × 1496 iPadRetina横