【发布时间】:2020-04-14 00:17:02
【问题描述】:
我有问题。
- 我想用列表视图上的选定项目重定向布局。
- 我想要重定向的布局有空视图对象,我想要 用所选列表视图对象中的数据填充它们
- 但我不能,我进行了调试,但在第 67 行出现错误 单击列表视图对象。我该怎么办?
请帮我做作业
onCreate 方法中的这段代码 代码:
final ListView listView = (ListView) findViewById(R.id.lw_yemekTarifleri);
customAdapter adapter = new customAdapter(this, yemekTarifleriList);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
//Log.i("OnClick", "position = " + position);
ImageView yemekResim = (ImageView) findViewById(R.id.iw_yemekResim);
TextView yemekIsim = (TextView) findViewById(R.id.tw_yemekIsim);
TextView yemekSure = (TextView) findViewById(R.id.tw_yemekSure);
TextView yemekMalzemeler = (TextView) findViewById(R.id.tw_malzemeler);
TextView yemekTarif = (TextView) findViewById(R.id.tw_tarif);
yemekTarifi secilenYemek = yemekTarifleriList.get(position);
yemekResim.setImageResource(secilenYemek.getResim()); //(line 67)!!!!!!!!!!!!
yemekIsim.setText(secilenYemek.getIsim());
yemekSure.setText(secilenYemek.getHazirlanisSuresi());
yemekMalzemeler.setText(secilenYemek.getMalzemeler());
yemekTarif.setText(secilenYemek.getTarif());
setContentView(R.layout.yemek_tarifi);
}
});
错误:
E/AndroidRuntime: 致命异常: main 进程:com.example.erensayar_yemektarifi,PID:13293 java.lang.NullPointerException:尝试在空对象上调用虚拟方法“void android.widget.ImageView.setImageResource(int)” 参考 在 com.example.erensayar_yemektarifi.anaSayfa_yemekTarifleri$1.onItemClick(anaSayfa_yemekTarifleri.java:67) 在 android.widget.AdapterView.performItemClick(AdapterView.java:318) 在 android.widget.AbsListView.performItemClick(AbsListView.java:1159) 在 android.widget.AbsListView$PerformClick.run(AbsListView.java:3136) 在 android.widget.AbsListView$3.run(AbsListView.java:4052) 在 android.os.Handler.handleCallback(Handler.java:873) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:193) 在 android.app.ActivityThread.main(ActivityThread.java:6669) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
代码上传到github:github.com/erensayar/android
【问题讨论】:
-
请发布您的项目布局 xml 文件。
-
我上传到github:github.com/erensayar/android
标签: android listview layout adapter