好。我正在开发一个项目,已经创建了列表视图,但是我想单击它并转到另一个页面,例如,当您单击一个按钮时,它会转到另一个页面,就像这样,到目前为止,这是我的代码:
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class listV extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setListAdapter( new ArrayAdapter<String>(this, R.layout.listview,Food));
ListView list = getListView();
list.setTextFilterEnabled(true);
list.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), ((TextView) arg1).getText(), Toast.LENGTH_SHORT).show();
}
});
}
static final String[] Food = new String[]{
"Physical Activity" , "Healthy Diet", "Childhood Obesity"
};
}
任何帮助,将不胜感激。
我只是一个初学者,所以请尝试详细解释。
最佳答案
看来您已经95%了。在侦听器的onItemClick方法中,您只需像平常一样开始新的活动即可。您可以使用onItemClick的第3个参数为您提供被单击的listview项的位置,并使用它来区分您调用的活动或将其传递到单个活动中:
@Override
public void onItemClick(AdapterView<?> arg0, View position, int arg2, long arg3) {
Intent i;
if( position == 1 ){
i = new Intent(listV.this, MyFirstActivity.class);
} else if (position == 2){
i = new Intent(listV.this, MySecondActivity.class);
} else if (position == 3) {
i = new Intent(listV.this, MyThirdActivity.class);
} else {
return;
}
startActivity(i);
}
关于java - 如何制作可点击的 ListView ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7784380/