我做了一個listview與onitemclick方法,以提供從數據庫到其他活動的捆綁。列表視圖項onclick從數據庫提供捆綁
但其他活動沒有得到捆綁,因爲我預料,有人可以檢查我的代碼,並告訴爲什麼? THX
mDB = new ChannelDB(this); String[] columns = {mDB.KEY_ID, mDB.KEY_POSTER, mDB.KEY_CHANNEL, mDB.KEY_PATH, mDB.KEY_DBLINK}; String table = mDB.channelS_TABLE; c = mDB.getHandle().query(table, columns, null, null, null, null, null); startManagingCursor(c); SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.channelview, c, new String[] {mDB.KEY_POSTER, mDB.KEY_CHANNEL, mDB.KEY_DBLINK}, new int[] {R.id.poster, R.id.channel, R.id.douban}); adapter.setViewBinder(new ChannelViewBinder()); channellist.setAdapter(adapter); channellist.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { c.moveToPosition(position); Intent intent = new Intent(); intent.setClass(HDtvs.this,Showlist.class); Bundle bunde = new Bundle(); bunde.putString("path",mDB.KEY_PATH); bunde.putString("cname",mDB.KEY_CHANNEL); bunde.putString("dblink",mDB.KEY_DBLINK); /* 將Bundle對象assign給Intent */ intent.putExtras(bunde); startActivity(intent); } });
showlist.java
> public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* 設定layout爲newslist.xml */
setContentView(R.layout.showlist);
ChannelName=(TextView) findViewById(R.id.cname);
back=(Button) findViewById(R.id.back);
likebutton=(Button) findViewById(R.id.share);
Intent intent=this.getIntent();
Bundle bunde = intent.getExtras();
/* 取得Bundle對象中的數據 */
String path = bunde.getString("path");
String title = bunde.getString("cname");
String dblink = bunde.getString("dblink");
Bundle bunde2= new Bundle();
bunde2.putString("dblink",dblink);
/* 調用getRss()取得解析後的List */
li=getRss(path);
ChannelName.setText(title);
/* 設定自定義的MyAdapter */
setListAdapter(new MyAdapter(this,li, bunde2));
`
你可以添加你來自哪裏,在'Intent'藏漢retrive數據的代碼:?u能在這條線突破點? – kaspermoerch
粘貼展示活動代碼 – Pratik
如何定義MyAdapter?嘗試'Log.i(「showlist」,「dblink =」+ dblink)',看看這個值是否出現在'logcat'中。 – chiuki