導航:首頁 > 操作系統 > android獲取布局高度

android獲取布局高度

發布時間:2022-05-10 10:26:52

android 動態設置布局寬度

例如設置一個圖片寬高 關鍵代碼:
//取控制項當前的布局參數
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) imageView.getLayoutParams();
//設置寬度值
params.width = dip2px(MainActivity.this, width);
//設置高度值
params.height = dip2px(MainActivity.this, height);
//使設置好的布局參數應用到控制項
imageView.setLayoutParams(params);
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
高度除了可以設置成以上固定的值,也可以設置成wrap_content或match_content
ViewGroup.LayoutParams.WRAP_CONTENT
ViewGroup.LayoutParams.MATCH_PARENT
1
2
1
2
在這里插入圖片描述
xml

Ⅱ android 代碼里獲取XML里的布局 修改高度

第一個參數是寬,第二個是高

Ⅲ android如何根據屏幕的大小動態布局UI

DisplayMetrics dm = new DisplayMetrics();//獲取當前顯示的界面大小
getWindowManager().getDefaultDisplay().getMetrics(dm);
dm.widthPixels //獲取當前界面的寬度
dm.heightPixels//獲取當前界面的高度
再用AbsoluteLayout布局,動態添加所要顯示的界面位置坐標,就搞定了

Ⅳ android自定義view如何獲取父容器賜予的寬度和高度

自定義View,想要自定義給定寬和高,你要寫自定義屬性,然後在xml文件中指定寬高才會有效,同時當給定的寬和高的值是wrap_content 或 fill_parent 這類的,這時需要在自定義View中重寫onMeasure方法,進行控制項的寬高測量。

Ⅳ android編程:android中如何獲取屏幕大小

java">Displaydisplay=getWindowManager().getDefaultDisplay();
Pointsize=newPoint();
display.getSize(size);
intwidth=size.x;
intheight=size.y;

Ⅵ 如何正確獲取Android控制項的高度

Android動態改變View控制項大小的方法: 1、聲明控制項參數獲取對象 LayoutParams lp; 2、獲取控制項參數: lp = 控制項id.getLayoutParams(); 3、設置控制項參數:如高度。 lp.height -= 10; 4:、使設置生效:控制項id.setLayoutParams(lp); 例如如要把Imageview下移200px: ImageView.setPadding( ImageView.getPaddingLeft(), ImageView.getPaddingTop()+200, ImageView.getPaddingRight(), ImageView.getPaddingBottom());

Ⅶ 如何獲取LinearLayout的寬度和高度

首先我們自己寫一個控制項,這個控制項非常簡單:

public class MyImageView extends ImageView {
public MyImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyImageView(Context context) {
super(context);
}

@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
System.out.println("onMeasure 我被調用了"+System.currentTimeMillis());
}

@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
System.out.println("onDraw 我被調用了"+System.currentTimeMillis());
}
}

布局文件:

<com.test.MyImageView
android:id="@+id/imageview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test" />

測試的Activity的onCreate():

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
System.out.println("執行完畢.."+System.currentTimeMillis());
}

現在我們現在來看一下結果:

說明等onCreate方法執行完了,我們定義的控制項才會被度量(measure),所以我們在onCreate方法裡面通過view.getHeight()獲取控制項的高度或者寬度肯定是0,因為它自己還沒有被度量,也就是說他自己都不知道自己有多高,而你這時候去獲取它的尺寸,肯定是不行的.

Ⅷ android獲取布局的高高度和寬度的問題

imageback.post(newRunnable(){
run(){
intw=imageback.getWidth().
}
})

只有在View執行完measure之後,才會有width和height

Ⅸ Android獲取layout的height值

建議TableRow下不要再放布局。TableRow可以設置列數或自動縮放等屬性。
要獲取LinearLayout的height可以給該LinearLayout設置一個id,通過id得到LinearLayout對象,就可以getHeight()取得height的值。
------------------------------------------------------------------------
我現在給LinearLayout賦了Id屬性而且用findViewById獲得了對象但是用getHeight()後獲得值是-2。如何獲得其正確值?

獲取的值是跟你設置有關的,如果你的LinearLayout的height設置是fill_content或wrap_content,當然是取得-1或-2.如果你給其指定一個值,就可以獲取得到。
一般上都是通過layout.getLayoutParams().height = 50;修改LinearLayout的值。也可以直接在xml文件中修改。

Ⅹ android activity 什麼時候可以得到view的高度

在onCreate函數中,View還未被展開,是無法獲得高度的。
所以可以對TextvView注冊一個監聽者:


復制代碼
ViewTreeObserver vto = tv.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
public void onGlobalLayout() {

heigh = appDescription.getHeight();

tv.getViewTreeObserver().removeGlobalOnLayoutListener(this);
}
});

閱讀全文

與android獲取布局高度相關的資料

熱點內容
web前端後端程序員 瀏覽:24
萬能zip的壓縮包怎麼解壓 瀏覽:40
國內動漫用什麼app看 瀏覽:353
樹莓派高級編程 瀏覽:928
30歲學編程晚嗎 瀏覽:68
解壓專家怎麼打開 瀏覽:86
php開源留言板 瀏覽:49
新鄉市區疫情怎麼查詢app 瀏覽:158
我的世界伺服器怎麼弄圖 瀏覽:999
vc6的編譯框 瀏覽:198
程序員寫照 瀏覽:539
怎麼退出github伺服器版本 瀏覽:797
雲伺服器sip 瀏覽:910
對稱平衡型壓縮機 瀏覽:953
rust連接什麼伺服器 瀏覽:382
php刪除數組的空元素 瀏覽:74
有什麼古今翻譯的app 瀏覽:54
華為平板里的app熱門推薦怎麼關閉 瀏覽:731
kindle可以看pdf嗎 瀏覽:620
小米文件夾變小 瀏覽:324