2012-12-22 52 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>