【发布时间】:2014-06-04 12:42:12
【问题描述】:
我正在尝试将 ciicked listitem 数据传递给另一个活动,但每当我点击任何列表项时,都无法获取 Toast 也无法将选定的列表项值传递给另一个活动。
所以我想知道:
如何通过点击列表项将值从一个活动传递到另一个活动?
第二个
为什么不在 Toast 中显示点击的列表项位置?
MainActivity.java:
@Override
protected void onPostExecute(Void args) {
// Locate the listview in listview_main.xml
listview = (ListView) findViewById(R.id.listview);
// Pass the results into ListViewAdapter.java
adapter = new ListViewAdapter(MainActivity.this, arraylist);
// Set the adapter to the ListView
listview.setAdapter(adapter);
// Close the progressdialog
mProgressDialog.dismiss();
listview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this, position, Toast.LENGTH_LONG).show();
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this, SingleItemView.class);
// Pass all data rank
intent.putExtra("rank", arraylist.get(position).get(MainActivity.RANK));
// Start SingleItemView Class
startActivity(intent);
}
});
}
放Log.d报错后,请查看下方完整日志
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this, position, Toast.LENGTH_LONG).show();
// TODO Auto-generated method stub
Log.d("RANK::", arraylist.get(position).get(MainActivity.RANK));
日志:
06-04 18:21:12.725: E/AndroidRuntime(19957): FATAL EXCEPTION: main
06-04 18:21:12.725: E/AndroidRuntime(19957): android.content.res.Resources$NotFoundException: String resource ID #0x0
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.content.res.Resources.getText(Resources.java:242)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.widget.Toast.makeText(Toast.java:304)
06-04 18:21:12.725: E/AndroidRuntime(19957): at com.androidbegin.jsonparsetutorial.MainActivity$DownloadJSON$1.onItemClick(MainActivity.java:107)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.widget.AdapterView.performItemClick(AdapterView.java:301)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.widget.AbsListView.performItemClick(AbsListView.java:1280)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.widget.AbsListView$PerformClick.run(AbsListView.java:3071)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.widget.AbsListView$1.run(AbsListView.java:3972)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.os.Handler.handleCallback(Handler.java:615)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.os.Handler.dispatchMessage(Handler.java:92)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.os.Looper.loop(Looper.java:137)
06-04 18:21:12.725: E/AndroidRuntime(19957): at android.app.ActivityThread.main(ActivityThread.java:4921)
06-04 18:21:12.725: E/AndroidRuntime(19957): at java.lang.reflect.Method.invokeNative(Native Method)
06-04 18:21:12.725: E/AndroidRuntime(19957): at java.lang.reflect.Method.invoke(Method.java:511)
06-04 18:21:12.725: E/AndroidRuntime(19957): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1036)
06-04 18:21:12.725: E/AndroidRuntime(19957): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:803)
06-04 18:21:12.725: E/AndroidRuntime(19957): at dalvik.system.NativeStart.main(Native Method)
【问题讨论】:
-
你的代码有什么问题?
-
我不知道,但每当我点击任何列表项时,都没有得到我想要的...@Raghunandan
-
你能记录下
arraylist.get(position).get(MainActivity.RANK)的值吗 -
@Raghunandan 请检查我发布的代码!
-
第 107 行
MainActivity.java是什么?
标签: android listview android-listview adapter baseadapter