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

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

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

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

118閲覧

Viewを動的に移動させるtranslationX,translationYの移動距離の基準がわからない

masa-nakamura

総合スコア6

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2024/11/30 06:32

編集2024/11/30 11:38

実現したいこと

画面上で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に相当するとわかった。

補足

特になし

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

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

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

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

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

guest

回答1

0

ベストアンサー

https://developer.android.com/reference/android/view/View#setTranslationX(float)

には

Parameters
translationX float: The horizontal position of this view relative to its left position, in pixels.

とありますね。

投稿2024/11/30 12:24

jimbe

総合スコア13209

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

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

masa-nakamura

2024/11/30 12:55 編集

どうもありがとうございます! 初歩的な質問でしたが、はまりこんでわからなくなっておりましたので、助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問