Android:在Tab Layout中使用ListActivity时出错

时间:2010-10-11 20:02:45

标签: java android listview tabs

如果这是一个重复的问题我提前道歉,我全神贯注地找不到任何解决方案来帮助我。

我已按照android dev tutorial创建了一个标签式用户界面,该界面为每个标签使用单独的活动。

我工作得很好。直到...

我试图将ListView放在其中一个标签式活动中(Tab1)。为了获得我想要的可用性,我发现我需要扩展ListActivity。那是我收到'Force close'错误的时候。当我扩展常规Activity时,它显示正常。

这是我的非功能性Tab1.java代码:

public class Tab1 extends ListActivity {
    ListView lv;
    String[] times = {
        "7:00 AM", "8:00 AM", "9:00 AM", "10:00 AM", "11:00 AM",
            "12:00 AM", "1:00 PM", "2:00 PM", "3:00 PM", "4:00 PM",
            "5:00 PM", "6:00 PM", "7:00 PM"
    };

    /** Called when the activity is first created. */@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tab1);

        lv = (ListView) findViewById(R.id.ListView_Tab1);
        lv.setAdapter(new ArrayAdapter < String > (this, R.layout.list_item, R.id.times,
            times));
        lv.setOnItemClickListener(new OnItemClickListener() {@
            Override
            public void onItemClick(AdapterView <? > parent, View view,
                int position, long id) {
                // When clicked, show a toast with the TextView text
                Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
                    Toast.LENGTH_SHORT).show();
            }
        });
    }
}

2 个答案:

答案 0 :(得分:1)

使用ListView时,@android:id/list的ID必须为ListActivity

答案 1 :(得分:0)

您是否在清单中声明了新的活动?如果您尝试为活动创建一个选项卡而不在那里声明,它将崩溃。