実現したいこと
画面上でViewを動的に移動させるアプリを作っています。
発生している問題・分からないこと
findViewById<ImageView>(R.id.〇〇).translationX = 100f
findViewById<ImageView>(R.id.〇〇).translationY = 100f
などとして図形を移動させるのですが、問題は、ここでの「100f」などの数値が何を基準にした長さなのかわからないことです。
実際にアプリを作って試してみると、100fに相当するのは約38dpでした。スマホの機種やViewの種類、大きさを変えて数回試しましたが、全てこの値でした。
しかし「38dpに相当する長さを100fと定義してメソッドが作られている」というのは不自然な気がします。100fという数値の意味するものが別にあるのではないか、状況によっては上記の38dpという値は変わるのではなかろうかと思っているところです。この「数値の意味」または「アプリ上で意図した距離の移動を実現する際の数値設定の方法」について、どなたかご教示いただければありがたいです。
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
Google等で、tranlationX、translationYについて検索しましたが、長さの定義を見つけることができなかった。
ソースコードにViewを作り、MainActivityの中でtransltionXおよびtranslationYによって移動されるようにした。一方、レイアウト画面で同じViewを複製し38dp移動させておいた。そのうえでアプリを立ち上げ、最初のViewと重なるかどうか試した。結果、ImageViewもTextViewも重なったため、この状況のもとでは100fは約38dpに相当するとわかった。
補足
特になし
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/11/30 12:55 編集