2010-11-19 14 views
3

我创建了一个TabWidgetandroid:layout_above =“@ android:id/tabs”的等效代码是什么?

TabWidget tabWidget = new TabWidget(this); 
     tabWidget.setId(android.R.id.tabs); 

和FrameLayout里

FrameLayout frameLayout = new FrameLayout(this); 
     frameLayout.setId(android.R.id.tabcontent); 

怎么做的FrameLayout上面的标签?

**what is the equivalent code to "android:layout_above="@android:id/tabs"** 

编辑

我对这个代码做什么,是不是正确的?

TabHost tabHost = new TabHost(this); 
tabHost.setLayoutParams(
       new RelativeLayout.LayoutParams(
         LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT,1)); 
TabWidget tabWidget = new TabWidget(this); 
     tabWidget.setId(android.R.id.tabs); 

RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(width, height); 
lp.addRule(RelativeLayout.ABOVE, R.id.tabcontent); 
tabWidget.setLayoutParams(lp); 

tabHost.addView(tabWidget); 
FrameLayout frameLayout = new FrameLayout(this); 
     frameLayout.setId(android.R.id.tabcontent); 
     frameLayout.setPadding(0, 55, 0, 0); 
tabHost.addView(frameLayout, new RelativeLayout.LayoutParams(
        LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
tabHost.setup(); 

回答

5
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(width, height); 
lp.addRule(RelativeLayout.ABOVE, R.id.tabcontent); 
tabWidget.setLayoutParams(lp); 
+0

嘿,我DONO我哪里错了!它不适合我!让我更新我的代码 – Ads 2010-11-21 09:01:18

+0

我错过了任何相对布局? – Ads 2010-11-21 09:17:17

+0

当然,你需要使用RelativeLayout ... android:layout_above特定于它如何排列其子元素。 – 2010-11-21 12:57:57

相关问题