问题
Hey can someone tell me how I can start an activity by pressing an item in a listview?
Here is a hunch I have:
EDIT- I have fixed it i think becuse i get no error messages. but when i will start this activity (Videos) the app carshes and wants to force close whats the problem? help pls :D
Here is the source code-
package com.alpha.liveshit;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class Videos extends ListActivity {
String[] elements = {"video", "menu"};
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videos);
ListView listview = (ListView)findViewById(R.id.listView1);
listview.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, elements));
}
public void onListItemClick(ListView parent, View v, int position, long id) {
if ("video".equals(elements[position]))
{Intent myIntent = new Intent(Videos.this, Lars.class);
startActivity(myIntent);}
else if ("menu".equals(elements[position]))
{Intent myIntent = new Intent(Videos.this, MenuActivity.class);
startActivity(myIntent);}
}
}
回答1:
Make sure you are adding the activity to the Android manifest In your manifest file you should add the activity like this:
<activity android:name=".Lars"/>
make sure to do this for each Intent and activity you plan to use.
回答2:
You are passing an Activity as the argument to the startActivity()
function
startActivity(MenuActivity.class)
Instead you should be passing it an Intent like this
Intent myIntent = new Intent(Videos.this, MenuActivity.class);
startActivity(myIntent);
来源:https://stackoverflow.com/questions/7338475/android-listview-start-new-activity