Android : 以编程方式设置 LinearLayout 的引力

Android : Set gravity of a LinearLayout programmatically

我是 android 编程新手。

我只是发现 xml 不是设置布局的唯一方法。所以,我试图了解以编程方式设置的布局。我一直在尝试更改按钮的位置。我怎样才能设置布局重力,以便按钮将定位在预期的轴上,比方说 bottomcenter?

顺便说一句,iciclesavedInstanceState 是一回事吗?

这是我偶然发现的编码。 你能告诉我设置重力的正确方法吗?

 @Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);

    LinearLayout one = new LinearLayout(this);
    myButton1 = new Button1(this);
    one.addView(myButton1,
        new LinearLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.WRAP_CONTENT,
            0));
    myButton2 = new Button2(this);
    one.addView(mButton2,
        new LinearLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.WRAP_CONTENT,
            0));
    setContentView(one);

您需要使用setGravity(),

例如button.setGravity(Gravity.CENTER | Gravity.BOTTOM);

yourLinearLayout.setGravity(Gravity.BOTTOM);

就这么简单

我想,你正在寻找

LinearLayout one = new LinearLayout(this);

        one.setGravity(Gravity.BOTTOM | Gravity.CENTER);  //to show LinearLayout gravity

        Button myButton1 = new Button(this);
        one.addView(myButton1,
                    new LinearLayout.LayoutParams(
                        ViewGroup.LayoutParams.WRAP_CONTENT,
                        ViewGroup.LayoutParams.WRAP_CONTENT,
                        0));
        myButton1.setText("First");
        myButton1.setGravity(Gravity.CENTER);   //to show text gravity in button

        Button myButton2 = new Button(this);
        one.addView(myButton2,
                    new LinearLayout.LayoutParams(
                        ViewGroup.LayoutParams.WRAP_CONTENT,
                        ViewGroup.LayoutParams.WRAP_CONTENT,
                        0));
        myButton2.setText("Second");
        myButton2.setGravity(Gravity.CENTER);   //to show text gravity
        setContentView(one);

icicle is sometimes used as the name of the parameter.It's just a placeholder for one of the formal parameters onCreate takes one Bundle parameter. It's up to you what to call it.

LinearLayout 的一些属性