Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.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
Java 如何根据在listview中单击的项目启动新活动?_Java_Android_Listviewitem_Start Activity - Fatal编程技术网

Java 如何根据在listview中单击的项目启动新活动?

Java 如何根据在listview中单击的项目启动新活动?,java,android,listviewitem,start-activity,Java,Android,Listviewitem,Start Activity,我已经被困在这2天了,我不明白为什么下面的代码不工作,问题似乎是“如果”块上的onItemClick,请我真的很感激如果有人能帮我解决这个问题。谢谢 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int

我已经被困在这2天了,我不明白为什么下面的代码不工作,问题似乎是“如果”块上的onItemClick,请我真的很感激如果有人能帮我解决这个问题。谢谢

 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String name = parent.getItemAtPosition(position).toString();
                Toast.makeText(SearchActivity.this, name,Toast.LENGTH_LONG).show();
                if (name=="Sweet Tooth"){
                    Intent intent = new Intent(SearchActivity.this,SwitActivity.class);
                    startActivity(intent);
                }
            }
        });
listView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
字符串名称=parent.getItemAtPosition(position).toString();
Toast.makeText(SearchActivity.this,name,Toast.LENGTH_LONG.show();
如果(姓名==“甜食”){
意向意向=新意向(SearchActivity.this、SwitActivity.class);
星触觉(意向);
}
}
});

在java字符串中==String将始终返回false

用这个代替

String s = "Sweet Tooth";

if (s.equals("Sweet Tooth"){
   //code
}
试试这个:

String name = listview.getItemAtPosition(position).toString();


在Java中,使用
equals
函数比较两个字符串

String name = parent.getItemAtPosition(position).toString();
if (name.equals("Sweet Tooth")){
    startActivity(new Intent(SearchActivity.this,SwitActivity.class));
   }
String name = parent.getItemAtPosition(position).toString();
if (name.equals("Sweet Tooth")){
    startActivity(new Intent(SearchActivity.this,SwitActivity.class));
   }