Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.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
Android与ListView的问题_Android_Android Listview - Fatal编程技术网

Android与ListView的问题

Android与ListView的问题,android,android-listview,Android,Android Listview,好的,我已经试着自己解决了这个问题,但即使我在stackoverflow上找到了一个答案(即这个),我仍然有问题。我有一个名为HeadlinesActivity的活动,它通过单击按钮从MainActivity启动。我遇到的问题与我链接的问题中的问题相同,但我按照建议将ListView声明和其他相关内容移动到了onCreate()中,从而消除了eclipse中的错误。然而,现在当我尝试在模拟器上测试应用程序时,如果我尝试单击标题按钮,Android会显示一条消息,说明我的应用程序已停止。 这是我的

好的,我已经试着自己解决了这个问题,但即使我在stackoverflow上找到了一个答案(即这个),我仍然有问题。我有一个名为HeadlinesActivity的活动,它通过单击按钮从MainActivity启动。我遇到的问题与我链接的问题中的问题相同,但我按照建议将ListView声明和其他相关内容移动到了onCreate()中,从而消除了eclipse中的错误。然而,现在当我尝试在模拟器上测试应用程序时,如果我尝试单击标题按钮,Android会显示一条消息,说明我的应用程序已停止。 这是我的HeadlinesActivity代码:

import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Build;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class HeadlinesActivity extends Activity {

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_headlines);

    // Make sure we're running on Honeycomb or higher to use ActionBar APIs
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // Show the Up button in the action bar.
        getActionBar().setDisplayHomeAsUpEnabled(true) ;
    }

    final ListView listView = (ListView) findViewById(R.id.listView1);
    final String[] values = { "Android", "iPhone", "WindowsMobile",
      "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
      "Linux", "OS/2" } ;
    final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
      R.layout.activity_headlines, R.id.textView1, values);

    // Assign adapter to ListView
    listView.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.activity_headlines, menu);
    return true;
}

}
导入android.annotation.SuppressLint;
导入android.app.Activity;
导入android.os.Build;
导入android.os.Bundle;
导入android.view.Menu;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
公共类标题活动扩展了活动{
@SuppressLint(“新API”)
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_标题);
//确保我们在蜂巢或更高版本上运行,以使用ActionBarAPI
if(Build.VERSION.SDK\u INT>=Build.VERSION\u code.HONEYCOMB){
//在操作栏中显示“向上”按钮。
getActionBar().setDisplayHomeAsUpEnabled(true);
}
最终ListView ListView=(ListView)findViewById(R.id.listView1);
最终字符串[]值={“Android”、“iPhone”、“WindowsMobile”,
“黑莓”、“WebOS”、“Ubuntu”、“Windows7”、“Max OS X”,
“Linux”、“OS/2”};
最终ArrayAdapter适配器=新的ArrayAdapter(此,
R.layout.activity_标题,R.id.textView1,值);
//将适配器分配给ListView
setAdapter(适配器);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.activity\u标题,菜单);
返回true;
}
}

您在活动和每个ListView行中使用相同的布局

  • 活动的布局应具有ListView(以及您想要的任何其他内容)
  • ListView行不应具有ListView元素。。。它应该包含更基本的构建块,如文本视图、图像视图等
至于当前的错误,我想
activity\u headlines.xml
没有id为
listView1
的ListView或id为
textView1
的TextView。尝试:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values);
ArrayAdapter adapter=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1的值);

Logcat中的错误消息是什么?@AlexFlorescu:嗯,我对android开发有点陌生,所以我对Logcat不太熟悉。我可能记得那突然出现的一些事情;也许我没有启用它。如何查看?如果您使用Eclipse,当应用程序崩溃时,LogCat会自动打开。突出显示红色错误行并按Ctrl+C复制它们,然后将它们粘贴到问题中。(点击问题下方的“”)谢谢,我已经解决了这个问题