如何让按钮从android中的屏幕宽度填充50%?

时间:2011-01-03 21:30:40

标签: android

我想让按钮从屏幕宽度始终填充50%,因为当我水平或垂直旋转设备时,按钮会从宽度填充50%

2 个答案:

答案 0 :(得分:178)

这应该可以通过使用weightSum和layout_weight来实现:

<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_height="wrap_content"
 android:layout_width="fill_parent"
 android:orientation="horizontal"
 android:weightSum="1.0">
 <Button
  android:id="@+id/textbox3"
  android:layout_height="wrap_content"
  android:layout_weight=".5"
  android:layout_width="0dip"
  android:textSize="12sp" />
</LinearLayout>

答案 1 :(得分:3)

要在代码中执行此操作。

// Get screen width.
DisplayMetrics metrics = new DisplayMetrics();
WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
wm.getDefaultDisplay().getMetrics(metrics);
final float width = metrics.widthPixels;
LinearLayout.LayoutParams layoutParamsWidth50 = new LinearLayout.LayoutParams(
    (int) (width/2) , ViewGroup.LayoutParams.MATCH_PARENT );
textbox3.setLayoutParams(layoutParamsWidth50);