當前位置:九游会j9娱乐平台-九游ag登录中心网址 » 安卓系統 » androidview設置高度

androidview設置高度-九游会j9娱乐平台

發布時間: 2024-11-16 10:52:26

① android xml中view標簽是做什麼的

如果寬度和高度按下面的設置,就會顯示一條寬度為1px的豎線
android:layout_width="1px"
android:layout_height="fill_parent"
你這個應該是個區域吧。

② android 自定義view:為什麼你設置的wrap_content不起作用

在使用自定義view時,view寬 / 高的 wrap_content 屬性不起自身應有的作用,而且是起到與 match_parent 相同作用。

其實這里有兩個問題:

請分析 & 解決問題之前,請先看自定義view原理中 (2)自定義view measure過程 - 最易懂的自定義view原理系列

問題出現在view的寬 / 高設置,那我們直接來看自定義view繪制中第一步對view寬 / 高設置的過程:measure過程中的 onmeasure() 方法

繼續往下看 getdefaultsize()

從上面發現:

那麼有人會問:wrap_content和match_parent具有相同的效果,為什麼是填充父容器的效果呢?

我們知道,子view的measurespec值是根據子view的布局參數(layoutparams)和父容器的measurespec值計算得來,具體計算邏輯封裝在getchildmeasurespec()里。

接下來,我們看生成子view measurespec的方法: getchildmeasurespec() 的源碼分析:

getchildmeasurespec()

從上面可以看出,當子view的布局參數使用 match_parent 或 wrap_content 時:

所以: wrap_content 起到了和 match_parent 相同的作用:等於父容器當前剩餘空間大小

當自定義view的布局參數設置成wrap_content時時,指定一個默認大小(寬 / 高)。

這樣,當你的自定義view的寬 / 高設置成wrap_content屬性時就會生效了。

網上流傳著這么一個解決方案:

答: 是,當父view為 at_most 、view為 match_parent 時,該view的 match_parent 的效果就等於 wrap_content 。上述方法存在邏輯錯誤,但由於這種情況非常特殊的,所以導致最終的結果沒有錯誤。具體分析請看下面例子:

從上面的效果可以看出,view大小 = 默認值

我再將子view的屬性改為 wrap_content :

從上面的效果可以看出,view大小還是等於默認值。

相信看到這里你已經看懂了:

為了更好的表示判斷邏輯,我建議你們用本文提供的解決方案,即根據布局參數判斷默認值的設置

不定期分享關於 安卓開發 的干貨,追求 短、平、快 ,但 卻不缺深度

③ android自定義view不隨系統顯示設置變大

設置屬性動畫改變scalex和scaley值。
變大變小可以用view、setscalex和setscaley,使用前分別設置軸心(setpivotx)。要動畫而不是直接突然變大的話用屬性動畫,屬性動畫改變scalex和scaley值。
補間動畫在這里不好用,不需要動畫的話,這里可以用把其他view都gone掉更好,用線性布局和weight去1/4平分空間,gone掉別的view的時候這個就自然變大占滿了或者應該播放時上面蒙層一個view專門處理播放。

④ android中如何在代碼中設置view的寬和高

layoutparams params = mwebviewheader.getlayoutparams(); params.height = height; params.width = layoutparams.fill_parent; mwebviewheader.setlayoutparams(params);

⑤ android基礎學習-view概述

在android應用開發中,view是構建用戶界面的核心組件,它是所有控制項的基類,可以理解為ui界面中的矩形區域,比如textview、button、imageview等基本控制項,以及能容納多個view的容器,如linearlayout、relativelayout、listview、recyclerview等,它們共同構成了android的視圖層次結構。

view的位置和大小通過四個頂點坐標決定,這些坐標對應於getleft(), getright(), gettop(), 和 getbottom() 方法,進而可以計算出寬度(right - left)和高度(bottom - top)。理解並設置好這些屬性,能精確控制控制項在屏幕上的布局。

view與用戶的交互主要通過motionevent事件來實現,當手指接觸屏幕時,會觸發action_down,手指移動則觸發action_move,手指離開屏幕則為action_up。通過設置ontouch事件,可以捕獲並響應這些動作,為用戶提供豐富的交互體驗。

在android中,view的表示方式有兩種:一是通過xml布局文件,比如在一個垂直排列的linearlayout中,你可以放置一個textview和一個button。二是通過java代碼動態創建和管理,例如創建一個linearlayout,設置其子控制項方向為垂直,然後添加文本框和按鈕實例。這兩種方法都可以達到相同的效果,開發者可以根據項目需求靈活選擇。

view是ui設計的基礎,無論是簡單的文本顯示還是復雜的交互界面,都離不開view的構建。後續的內容將深入探討更多view控制項及其自定義方法,敬請關注。

⑥ android 如何把某個view放大

如果是顯示效果變大.可以用android里的動畫.
如果是改變了view實際上的大小,可以得到layoutparams以後,重新設置寬高,再放回去.

⑦ android 如何設置view的大小

在這段代碼中,創建了一個新的實例並且設置了尺寸:
// set the imageview dimensions
int dimens = 120;
float density = activity.getresources().getdisplaymetrics().density;
int finaldimens = (int)(dimens * density);

linearlayout.layoutparams imgvwdimens =
new linearlayout.layoutparams(finaldimens, finaldimens);
imgalbumphoto.setlayoutparams(imgvwdimens);

// set scaletype
imgalbumphoto.setscaletype(scaletype.center_crop);

// set the margin
int dimensmargin = 5;
float densitymargin = activity.getresources().getdisplaymetrics().density;
int finaldimensmargin = (int)(dimensmargin * densitymargin);

linearlayout.layoutparams imgvwmargin =
new linearlayout.layoutparams(finaldimens, finaldimens);
imgvwmargin.setmargins
(finaldimensmargin, finaldimensmargin, finaldimensmargin, finaldim

ensmargin);

改變已存在的imageview尺寸,使用這個:
coupon_img.setlayoutparams(new layoutparams(100, 100));

熱點內容
vb資料庫數組 發布:2024-11-19 09:23:40 瀏覽:827
安卓游戲數據保存在哪裡找 發布:2024-11-19 09:22:02 瀏覽:309
解壓出來的文件亂碼 發布:2024-11-19 09:15:40 瀏覽:939
北航ftp是多少 發布:2024-11-19 09:15:32 瀏覽:821
瀏覽保存密碼如何取消 發布:2024-11-19 09:10:17 瀏覽:89
安卓怎麼關簡訊重復提醒 發布:2024-11-19 09:02:00 瀏覽:635
html與php的區別 發布:2024-11-19 09:00:53 瀏覽:193
晚安密碼多少 發布:2024-11-19 09:00:51 瀏覽:945
易語言腳本模塊 發布:2024-11-19 09:00:44 瀏覽:484
經典矩陣c語言 發布:2024-11-19 08:56:23 瀏覽:268
网站地图