まとまりのないブログ

something which something is something

雑記・雑学

レイアウトの位置設定でframeで設定する場合とpositionで設定する場合の違い

投稿日:

iosのUIButtonの配置で気になったのでメモ。


var myButton: UIButton!

// Buttonを生成する.
myButton = UIButton()
        
// サイズを設定する.
myButton.frame = CGRectMake(0,0,200,40)

// ボタンの位置を指定する.
myButton.layer.position = CGPoint(x: self.view.frame.width/2, y:200)

ポジションの設定はCGRectMakeでサイズとポジションを設定する方法と、layer.positionにCGPointで設定する方法がある。この二つの違いは、ポジションの原点の位置が異なる模様。CGRectMakeで設定する場合は原点はビューの左上になり、上記の0,0というポジションなら画面の左上にピタリと配置されることになる。CGPointで設定した場合は、原点はビューの中心となり、CGPoint(x: 0, y:0)と設定すると画面左上に配置されるがビューの中心を基準に配置されるので右下4分の1だけ表示されることになる。

-雑記・雑学
-,

執筆者:


comment

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

firefly ROC-RK3566-PC のメモリがECC使ってる模様

ROC-RK3566-PC fireflyというメーカー(ブランド?)のSBCの新しい製品でROC-RK3566-PCという型番の製品が新しく発売された様子。CPUはRockChip RK3566 C …

cocos2d-x javascript no.3 スプライトの大きさの変更

スプライトの大きさの変更 var sprite = cc.Sprite.create(“ball.png”); sprite.setTextureRect(cc.rect(0, …

no image

wordpressのパーマリンク設定で404になる問題

ワードプレスのパーマリンク設定をするとページ遷移先が404not foundになる場合。 チェックポイントは下記の3つ。 mod_rewriteの有効化 .htaccessの設置 管理画面にてパーマリ …

cocos2d-x javascript no.2 タッチイベントの追加

イベントはシーンまたはレイヤー、スプライトに追加することができる。イベントを定義し、addListnerにてそのイベントと対象オブジェクトを設定することでタッチイベントを受けることができるようになる。 …

no image

JAVAサーブレットクラスの初期化

JAVAサーブレットのクラスを初期化するときの方法について何種類かあるので迷ったので覚書き。 かんたんなサーブレットクラスを作ってテストしてみた。 public class InitTest exte …