メソッド setX, setTranslationX, setScaleX について

2,926 views
Skip to first unread message

galapagos mac

unread,
May 26, 2014, 10:43:19 AM5/26/14
to android-g...@googlegroups.com

こんにちは。
さっそくですが、質問させていただきます。
タイトルにあるメソッドについて、検索してみましたが、
意外と情報が少ないような気がしました。
検索のしかたが悪いのかもしれませんが・・・

これらのメソッドは引数に float の値を指定することはわかったのですが、
それらのfloat はピクセルを表すのか画面全体の幅を 1 としたときの
比率を表すのかわかりませんでした。

ボタン button を 画面サイズの4分の1だけ移動したいときに
button.setTranslationX( 0.25f ) などとするのかと思ったのです。

-----------------------------------------------------------
(1)
setScaleX について android developer のページには

void  setScaleX(float scaleX)

Sets the amount that the view is scaled in x around the pivot point,
as a proportion of the view's unscaled width.

とありましたが、

ボタンの変数を button としたとき、
水平方向に 2倍したいときには、

button.setScaleX( 2f );

と記述すればよいのでしょうか?

-----------------------------------------------------------
(2)
setX については、

void  setX(float x)

Sets the visual x position of this view, in pixels.

とあるので、
画面の情報をDisplay クラスから取得して
配置したい座標をピクセルで指定するのだと思います。
違っていたらご指摘ください。

-----------------------------------------------------------
(3)
setTranslationX につきましては、

void  setTranslationX(float translationX)
Sets the horizontal location of this view relative to its left position.

とあるのですが、
画面上の座標 ( 100, 100 ) にボタンbutton2 があり、
x軸方向に 50 移動したい場合、

button2.setTranslationX( 50f ) とするのでしょうか?
結果としてボタンの x 座標は 150 になるのでしょうか?
-----------------------------------------------------------

もしよければ教えていただけないでしょうか?
よろしくお願いします。


galapagos mac

unread,
May 26, 2014, 11:26:40 AM5/26/14
to android-g...@googlegroups.com
回答していただきありがとうございます。
すいません、英語に自身がないものですから・・・
ですが、書いてあるとおりのことを質問してきた、
ということは、この解釈で間違いない、ということでしょうか?
どうもすいません。

2014年5月26日月曜日 23時43分19秒 UTC+9 galapagos mac:

noxi

unread,
May 26, 2014, 11:35:26 AM5/26/14
to android-g...@googlegroups.com
noxiです。

余計な口出しかもしれませんが、

こういうメソッドがあって、ドキュメントには○○と書いてあるから、××の様に利用した結果、△△になった。
でも期待していたのは□□だった。
何が間違っているのか?

と質問した方が良いかな、と思いました。
MLはAPIドキュメント翻訳機でも、テスト代行機でもありませんので。。。


2014年5月27日 0:26 galapagos mac <tempuse...@gmail.com>:
> --
> このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
> このグループから退会し、グループからのメールの配信を停止するには
> android-group-j...@googlegroups.com にメールを送信してください。
> このグループに投稿するには android-g...@googlegroups.com にメールを送信してください。
> http://groups.google.com/group/android-group-japan からこのグループにアクセスしてください。
> その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

田代透

unread,
May 26, 2014, 11:20:51 AM5/26/14
to android-g...@googlegroups.com
http://developer.android.com/ に書いてあるとおりの事をわざわざ質問しないでください。

と、いうか何やってるんですか


2014年5月26日 23:43 galapagos mac <tempuse...@gmail.com>:

--
このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには android-group-j...@googlegroups.com にメールを送信してください。
このグループに投稿するには android-g...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/android-group-japan からこのグループにアクセスしてください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。



--
--
Toru Tashiro
toru...@gmail.com
Reply all
Reply to author
Forward
0 new messages