簡體   English   中英

如何將gridview分成相等的部分以填充屏幕

[英]how to split gridview into equal parts that fill the screen

我是android世界的新手,這個問題一直讓我頭疼。 我有一個帶有4個按鈕的gridview,我想將屏幕分成4個相等的高度和寬度按鈕。 (不分配自定義dp)。 我試圖使用layout_weight,但對我來說不起作用:/這是我的代碼的一些示例。 這是我使用gridview的課程

public class DietAdminPanel extends Activity {

private Button mydiets_button;
private ArrayList<String> data;
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.gridview_layout);
    data = new ArrayList<String>();
    data.add("Test1");
    data.add("Test2");
    data.add("Test3");
    data.add("Test4");
    Log.d("On create", "success");
    GridView gridview = (GridView)findViewById(R.id.gridview);
    gridview.setAdapter(new GridViewAdapter(this, data));

gridview_layout.xml

 <?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gridview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:columnWidth="30dp"
    android:numColumns="2"
     android:verticalSpacing="0dp"
     android:horizontalSpacing="0dp"
     android:stretchMode="columnWidth"
     android:fillViewport="true"

     >

</GridView>

和gridview_item_layout.xml(用於自定義適配器)

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView android:id="@+id/gridview_textview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="test"/>
</LinearLayout>

這是實際的樣子

http://i.stack.imgur.com/Iah2y.jpg

這就是我希望我的gridview看起來的樣子(為此我在dp中使用width,那不是我想要的:/)

http://i.stack.imgur.com/xHgkj.jpg

如果您知道什么,請告訴我;)

GridView僅可水平縮放,這意味着它將創建與您定義的列一樣多的列,且僅在水平方向具有相同的大小。

每個單元格的高度將取決於其內部的視圖

GridView用於顯示許多不能全部同時顯示的項目,因此將它們滾動到視圖中。 您仍然可以使用android:verticalSpacing="50dp"設置項目之間的垂直空間。

但是,如果只有少量固定的項目可以全部同時顯示在屏幕上,則可能要改用TableLayoutGridLayout

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM