2012-02-13 119 views
0

有没有办法在android中动态添加和定位图像到线性布局?在PHP中,我可以只是回声一个图像标签,并使用CSS来定位它,但不知道如何解决这个问题,但是由于xml似乎是非常严格的预定义。如何动态添加视图到LinearLayout?

回答

1

您可以通过调用ViewGroup.addView(View)方法将视图添加到任何ViewGroup。如何,这是添加视图模糊的方式。首选的是,你首先为给定的布局创建一个LayoutParams(考虑到这一点),这将允许你更亲密地控制视图及其与父视图的关系。

这里是整合实验样品:

class MyActivity extends Activity { 
    @Override public void onCreate(Bundle icicle) { 
     super.onCreate(icicle) 

     LinearLayout ll = new LinearLayout(this); 
     ll.setOrientation(LinearLayout.VERTICAL); 
     // Create 5 view to take up a small amount of space. 

     View tmp = null; 

     for (int i = 0; i < 5; i++) { 
      tmp = new View(this); 
      ll.addView(tmpnew LinearLayout.LayoutParams(
       50, // Width 
       50); // Height 
      // Either or both the width and height may be ViewGroup. 
      // (WRAP_CONTENT || FILL_PARENT || MATCH_PARENT) 
     } 

     setContentView(ll); 
    } 
} 

这是你将如何动态地将视图添加到LinearLayout中。但是,由于LinearLayout的结构和设计,定位的方式确实不多。把LinearLayout想象成一个方向完整的视图,你唯一能做的就是改变它们在数组中的位置。如果你想精确控制视图,我推荐一个RelativeLayout.