2012-12-22 51 views
1

我想要在我的Android tabWidget中填充字符串的简单gridView。我有一个带有三个选项卡的tabHost,每个选项卡都具有在一个XML文件中描述的线性布局。我尝试在它下面有一个按钮和网格。达到此目的最简单的方法是什么?TabWidget中的Android GridView

当我尝试这样的事:

<LinearLayout 
    android:id="@+id/tab2" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
> 
<Button 
    android:id ="@+id/downloadBtn" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="pobierz waluty" 
/> 

<GridView 
    android:id="@+id/grid" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:verticalSpacing="35px" 
    android:horizontalSpacing="5px" 
    android:numColumns="auto_fit" 
    android:columnWidth="100px" 
    android:stretchMode="columnWidth" 
    android:gravity="center" 
/> 

,并在Java中:

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    String[] items={"lorem", "ipsum", "dolor", "sit", "amet", 
     "consectetuer", "adipiscing", "elit", "morbi", "vel", 
     "ligula", "vitae", "arcu", "aliquet", "mollis", 
     "etiam", "vel", "erat", "placerat", "ante", 
     "porttitor", "sodales", "pellentesque", "augue", "purus"}; 

    downloadXML = (Button)findViewById(R.id.downloadBtn); 

    GridView grid= (GridView)findViewById(R.id.grid); 
    grid.setAdapter(new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1, items)); 

    TabHost tabs = (TabHost)findViewById(R.id.tabHost); 
    tabs.setup(); 

    TabHost.TabSpec spec = tabs.newTabSpec("tag1"); 
    spec.setContent(R.id.tab1); 
    spec.setIndicator("kalkulator"); 
    tabs.addTab(spec); 

    spec= tabs.newTabSpec("tag2"); 
    spec.setContent(R.id.tab2); 
    spec.setIndicator("kurs walut"); 
    tabs.addTab(spec); 

    spec=tabs.newTabSpec("tag3"); 
    spec.setContent(R.id.tab3); 
    spec.setIndicator("konwerter"); 
    tabs.addTab(spec); 
} 

我只有按钮,在我的第二个选项卡中。以下XML为

回答

1

使用,它会解决你的问题

<LinearLayout 
    android:id="@+id/tab2" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <Button 
     android:id ="@+id/downloadBtn" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="pobierz waluty"/> 

    <GridView 
     android:id="@+id/grid" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:verticalSpacing="35px" 
     android:horizontalSpacing="5px" 
     android:numColumns="auto_fit" 
     android:columnWidth="100px" 
     android:stretchMode="columnWidth" 
     android:gravity="center" /> 

</LinearLayout>