我正在尝试获取屏幕的宽度,然后更改按钮的宽度。我正在使用setWidth,并且宽度没有变化(我把它设置为一个小数字,30,所以我可以判断尺寸是否改变。 码 mBut =(Button)findViewById(R.id.butRington); //这不起作用,将尺寸设置得很小,这样我才能真正说出来 mBut.setWidth(30); mBut.setOnClickListener(本);
layouut
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/butVol"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textSize="24px"
android:text="Volume"
android:textColor="#ff0000ff"
/>
<Button
android:id="@+id/butRington"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textSize="24px"
android:text="Rington"
android:textColor="#ff0000ff"
/>
答案 0 :(得分:1)
您需要修改按钮的LayoutParams。
mBut.setLayoutParams(new LinearLayout.LayoutParams(30,xxxx));
其中xxx是按钮的高度。您可以通过
检索它ViewGroup.LayoutParams params = mBut.getLayoutParams();
params.height;
答案 1 :(得分:0)
将layout_widht挂到wrap_content后,我可以将宽度更改为我需要的每个尺寸。
<Button
android:id="@+id/butRington"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="R"
android:textColor="#ff0000ff"
android:textSize="24px" />
答案 2 :(得分:0)
获取屏幕宽度:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x
现在您需要获取按钮,然后设置新宽度:
Button b = (Button) findViewById(R.id.button1);
b.setWidth(width);