Re: [問題] 請問如何在程式執行中用程式碼改變Butt …
※ 引述《pojohn (矇著臉代表武功高)》之銘言:
: 開發層: (應用/框架/庫/核心)
: 問題:
: 請問如何在程式執行中用程式碼改變Button位置??
: Button位置不是都在mail.xml檔裡有設定了嗎?
: 那在程式執行中要執行什麼程式碼才能改變它的x y值呢?
可以更改 View 的 LayoutParams 來動態改變 View 的位置。
下面虛擬碼為動態改變 Button 的長寬:
Button btn_test;
LayoutParams lp = btn_test.getLayoutParams();
lp.width = 10;
lp.height = 10;
btn_test.setLayoutParams(lp);
不管這個 Button 是利用程式碼產生,還是利用 xml 設計,
都可利用 getLayoutParams() 抓到相對應的 LayoutParams 出來。
不同的 Layout 方式有各自的 LayoutParams,
可以設定的東西也有所不同,讀寫(get/set)的時候請多加留意。
像是 LinearLayout.LayoutParams,只能設定 width, height, weight,
頂多再加上父類別(MarginLayoutParams)的 margin。
RelativeLayout.LayoutParams,則是藉著 addRule() 的方式,加入各式各樣
的對齊方式。
--
借用之前在 android 版回答的 code:)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.80.94
→
03/16 21:54, , 1F
03/16 21:54, 1F
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章