1

在一个小组中工作以制作一个 android 应用程序,目前我只需要创建一个由一个 ListView 组成的 Activity,该 ListView 显示几个可选择项(改编自一个字符串数组)——最终 ListView 将采用我们正在制作的一组对象,并且根据我们服务器上可用的对象,这个对象数组将会改变(因此,ListView 的条目将会改变)。但现在,我只需要让它与一个字符串数组一起工作。

所以,这是我活动的 xml 和 java main。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:layout_gravity="center">


    <ListView
        android:id="@+id/gamesListView"
        android:layout_width="match_parent"
        android:layout_height="320dp"
        android:entries="@+id/gamesList"

    >
    </ListView>

    <Button
        android:layout_width="fill_parent"
        android:layout_height="45dp" 
        android:text="Create"
        android:id="@+id/bCreate"
    />

    <Button
        android:layout_width="fill_parent"
        android:layout_height="45dp"
        android:text="Refresh"
        android:id="@+id/bRefresh"
    />

</LinearLayout>

package com.youcanthide.android.gamespage;


import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

public class MainActivity extends Activity {

Button create, refresh; //browse
String gamesList[] = {"game1", "game2", "game3"};

//Game [] games; **********//the array of available games to populate the SlideView

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    create = (Button) findViewById(R.id.bCreate);
    refresh = (Button) findViewById(R.id.bRefresh);

    ListView games = (ListView) findViewById(R.id.gamesListView);

    //Will have to remake adapter for Game objects
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,    android.R.layout.simple_list_item_1, gamesList);
    games.setAdapter(adapter);
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

我一直在尝试遵循 api 和简单的教程,但我仍然无法弄清楚它为什么会中断。eclipse 中没有错误消息,但是当我为活动运行模拟器时,它给了我“不幸的是(项目名称)已停止”。任何帮助将不胜感激!

4

3 回答 3

1

从您的 XML 中删除此行:

 android:entries="@+id/gamesList"
于 2013-04-05T01:08:06.600 回答
0

您的 ListView 中有两个 id。删除一个。

 ListView games = (ListView) findViewById(R.id.gamesListView);

在你的 xml 中删除android:entries="@+id/gamesList"

<ListView
        android:id="@+id/gamesListView"
        android:layout_width="match_parent"
        android:layout_height="320dp"

    >
于 2013-04-05T01:07:14.603 回答
0

为什么你必须要求这一行 XML 文件。

android:entries="@+id/gamesList"

从 xml 中删除此行并尝试此操作。

如果您发现任何问题,请告诉我。

于 2013-04-05T04:32:56.653 回答