Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我需要使用ArrayAdapter在GridView中显示ArrayList_Java_Android_Gridview_Arraylist_Android Arrayadapter - Fatal编程技术网

Java 我需要使用ArrayAdapter在GridView中显示ArrayList

Java 我需要使用ArrayAdapter在GridView中显示ArrayList,java,android,gridview,arraylist,android-arrayadapter,Java,Android,Gridview,Arraylist,Android Arrayadapter,我需要使用ArrayAdapter在GridView中显示ArrayList,但它当前不起作用 这是我的数组列表: ArrayList<String> num = new ArrayList<>(); num.add("Zero"); num.add("one"); num.add("Two"); num.add("Three"); num.add("Four"); num.add("Five"); num.

我需要使用ArrayAdapter在GridView中显示ArrayList,但它当前不起作用

这是我的数组列表:

    ArrayList<String> num = new ArrayList<>();
    num.add("Zero");
    num.add("one");
    num.add("Two");
    num.add("Three");
    num.add("Four");
    num.add("Five");
    num.add("Six");
    num.add("Seven");
    num.add("Eight");
    num.add("Nine");
    num.add("Ten");
这是我目前用来填充GridView的代码:

GridView rootView = (GridView) findViewById(R.id.activity_numbers);
ArrayAdapter<String> array = new ArrayAdapter<>(this, 
android.R.layout.simple_list_item_1, num);
rootView.setAdapter(array);

这是一种你可以做到的方法

    gridView = (GridView) findViewById(R.id.gridView1);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, numbers);

    gridView.setAdapter(adapter);

有关更多信息,请参见这一方法

    gridView = (GridView) findViewById(R.id.gridView1);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, numbers);

    gridView.setAdapter(adapter);

有关更多信息,请使用以下代码

activity_main.xml

<LinearLayout
    android:id="@+id/imageLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="5dp">

        <GridView
             android:id="@+id/gridview1"
             android:background="@color/colorAccent"
             android:layout_width="match_parent"
             android:layout_height="match_parent"/>

</LinearLayout>
MainActivity.java

public class MainActivity extends AppCompatActivity {

    GridView gridView;
    ArrayList<String> arrayList = new ArrayList<>();

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

        gridView = (GridView)findViewById(R.id.gridview1);

        for(int i=0;i<10;i++)
        {
            arrayList.add("Item - "+i);
        }

        ArrayAdapter adapter = new ArrayAdapter(getApplicationContext(),android.R.layout.simple_list_item_1,arrayList);
        gridView.setAdapter(adapter);
    }
}

您可以使用以下代码

activity_main.xml

<LinearLayout
    android:id="@+id/imageLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="5dp">

        <GridView
             android:id="@+id/gridview1"
             android:background="@color/colorAccent"
             android:layout_width="match_parent"
             android:layout_height="match_parent"/>

</LinearLayout>
MainActivity.java

public class MainActivity extends AppCompatActivity {

    GridView gridView;
    ArrayList<String> arrayList = new ArrayList<>();

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

        gridView = (GridView)findViewById(R.id.gridview1);

        for(int i=0;i<10;i++)
        {
            arrayList.add("Item - "+i);
        }

        ArrayAdapter adapter = new ArrayAdapter(getApplicationContext(),android.R.layout.simple_list_item_1,arrayList);
        gridView.setAdapter(adapter);
    }
}

输出显示为list not Grid您应该将其包含在问题正文中。为什么不使用列表视图?是否检查了属性android:numColumns,columnWidth?输出显示为list not Grid您应该将其包含在问题正文中。为什么不使用列表视图?是否检查了属性android:numColumns,列宽?