在Android Activity的初始化中,我应该在哪里应用程序布局更改?

时间:2011-10-28 17:13:21

标签: android android-layout

我正在编写一个Android Activity,我需要在初始化时对布局进行一些编程更改。

该活动使用标准onCreate调用,该调用通过setContentView(R.layout.main)从XML资源设置内容视图。这很好用。但是,我需要在代码中更改某些对象的位置。

当我尝试从onCreate和onResume内部调用object.layout时,似乎永远不会应用布局更改。

还有其他地方我应该这样做吗?

public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.main);
    LinearLayout rl = (LinearLayout) findViewById(R.id.navPanel);
    Rect myrect = new Rect();
    rl.getLocalVisibleRect(myrect);
    rl.layout(myrect.left,-120,myrect.right,(myrect.bottom-myrect.top)-120);

1 个答案:

答案 0 :(得分:1)

您不应该自己致电layout()。 Android处理它。您需要做其他事情来影响布局更改,通常是通过调整窗口小部件的LayoutParams