Android 不在listview中启动其他活动单击
这是我的代码。我在这里用一些数组数据生成一个列表视图。当我点击列表时,我可以通过使用Toast来检测它。但是我不能调用其他活动。 代替敬酒活动。Android 不在listview中启动其他活动单击,android,listview,android-listview,Android,Listview,Android Listview,这是我的代码。我在这里用一些数组数据生成一个列表视图。当我点击列表时,我可以通过使用Toast来检测它。但是我不能调用其他活动。 代替敬酒活动。 公共类ListView扩展了ListActivity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setListAdapter(new ArrayAdapter<String>
公共类ListView扩展了ListActivity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(this, R.layout.foodjoint, RESTAURANTS));
android.widget.ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
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();
myClickHandler();
}
});
// ListView restuList=ListView();
}
static final String[] RESTAURANTS = new String[] {
"Restaurant 1", "Restaurant 2", "Restaurant 3", "Restaurant 4", "Restaurant 5",
"Restaurant 6", "Restaurant 7", "Restaurant 8", "Restaurant 9", "Restaurant 10",
"Restaurant 11", "Restaurant 12", "Restaurant 13", "Restaurant 14", "Restaurant 15"
};
public void myClickHandler() {
finish();
Intent gotoLIst=new Intent(ListView.this,MenuActivity.class);
startActivity(gotoLIst);
}
@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setListAdapter(新的ArrayAdapter(this,R.layout.foodjoint,RESTAURANTS));
android.widget.ListView lv=getListView();
lv.setTextFilterEnabled(真);
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
Toast.makeText(getApplicationContext(),((TextView)视图).getText(),
吐司。长度(短)。show();
myClickHandler();
}
});
//ListView restuList=ListView();
}
静态最终字符串[]餐厅=新字符串[]{
“1号餐厅”、“2号餐厅”、“3号餐厅”、“4号餐厅”、“5号餐厅”,
“6号餐厅”、“7号餐厅”、“8号餐厅”、“9号餐厅”、“10号餐厅”,
“11号餐厅”、“12号餐厅”、“13号餐厅”、“14号餐厅”、“15号餐厅”
};
public void myClickHandler(){
完成();
Intent-gotoLIst=newintent(ListView.this,MenuActivity.class);
星触觉(哥特式);
}
这是我的XmL文件
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/AliceBlue "
android:padding="10dp"
android:textSize="16sp"
android:focusableInTouchMode="false"
android:clickable="false"
android:focusable="false" >
我需要调用另一个activity@listView.mclick
实际上,我使用了另一个活动,它也使用了一些列表视图。该活动包含一些错误。这就是它不起作用的原因。感谢Luksprog帮助我找到答案。在启动新活动后,您可能希望
finish()
当前的活动
:
public void myClickHandler() {
Intent gotoLIst=new Intent(ListView.this,MenuActivity.class);
startActivity(gotoLIst);
finish();
}
那么你的意思是,如果我在完成编辑后调用这个方法,那么我就可以调用另一个方法了?好的,让我试试04-09 17:00:10.168:E/AndroidRuntime(271):java.lang.IllegalStateException:ArrayAdapter要求资源ID为文本视图exception@kaushik新活动
MenuActivity
是否有一个ListView
,您可以在其上设置ArrayAdapter
?@kaushik,如果您对ArrayAdapter使用相同的构造函数代码>就像你在第一节课中做的那样,int
字段(比如R.layout.foodjoint
)必须指向一个只包含TextView
而不包含其他内容的布局文件。如果你想要除此之外的内容,还有其他构造函数可以使用。