我做了一个小菜单,如果点击一个元素,我正试图访问一个意图。然后突然停了下来我究竟做错了什么? (该数组已在XML值上填充)
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String[] adobe_products = getResources().getStringArray(R.array.adobe_products);
this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.label, adobe_products));
ListView lv = getListView();
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
String selection = ((TextView) v).getText().toString();
if (selection=="Extras"){
Intent i = new Intent(getApplicationContext(), Novedades.class);
startActivity(i);}
}
});
}
答案 0 :(得分:0)
从不在java比较像这样的字符串
if (selection == "Extras"){
Intent i = new Intent(getApplicationContext(), Novedades.class);
startActivity(i);
}
使用selection.equals("Extras");
但我很确定你的问题就在这里
String selection = ((TextView) v).getText().toString();
答案 1 :(得分:0)
您的selection
变量可能为空,可能就是原因
您的应用程序崩溃并使用equals
函数而不是"=="
。
if (selection != null && selection.equals("Extras")
{
Intent i = new Intent(getApplicationContext(), Novedades.class);
startActivity(i);
}
答案 2 :(得分:0)
我意识到了这个错误。
我忘了将意图包含在Manifest.xml中
感谢大家的时间和回应。