質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

268閲覧

親ビュー以外へのラベル移動

iMasa

総合スコア22

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

1グッド

0クリップ

投稿2017/10/07 14:55

swift3でipadアプリの開発をしています。
下記のようにlabelをアニメーション移動させたいと考えています。

■画面構成(-は階層構造)
左側に
tableview - cell

右側に
View - label(labelMoving)

■やりたいこと
(ボタンを押せば)
右側のViewにあるlabelMovingをCellの上(厳密にはCellの中にあるラベル)に移動させたい。

■現在のソースコード

swift

1let cell = tableView1.cellForRow(at: selectedRow) 2UIView.animate(withDuration: 1.0, delay: 0.0, options: [.curveLinear], animations: { 3 self.labelMoving.frame.origin.x = (cell?.frame.origin.x)! 4 }, completion: nil 5 )

■解決できないこと
frameというのが親ビューということなので上記のコードではうまくいかない事はわかります。
絶対座標の取得方法などを模索しているが、具体的な解決策がわかりません。
ご教授いただければ助かります。よろしくお願いします。

sakko69👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2017/10/10 00:44 編集

tableviewとViewのsuperviewが違うのでしょうか?
iMasa

2017/10/10 22:11

superviewが異なります。質問の表記方法が曖昧で申し訳ありませんでした。
guest

回答1

0

ベストアンサー

UIViewのconvert系の関数を使って座標変換出来そうな気がします。

投稿2017/10/10 00:45

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

iMasa

2017/10/10 22:15

convertの関数を利用してtableviewとViewのWindow全体に対する座標を算出し、 現在のラベル位置と目的位置との相対距離分移動させることで解決できました。 考え方が古いのか座標をマイナスにするという発想がありませんでした。 座標を扱うのはこれが初めてなのでもう少し体系的に勉強します。
iMasa

2017/10/10 22:16 編集

質問が曖昧にもかかわらず回答頂きありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問