2012-02-03 82 views
1

我有一個列表視圖與幾個項目,我設置此功能獲取調用時單擊列表視圖中的一行。列表視圖行按下

我想打開新的活動並從對象數組中發送一個對象。 我有這行的一個問題:

Intent i = new Intent(this, Item_Activity.class); 

因爲this現在沒有活動。

這是代碼:

lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) { 
      Intent i = new Intent(this, Item_Activity.class); 
      Item item = m_items.get(position); 
      i.putExtra("object", item); 
      startActivity(i); 
     } 

    }); 

回答

2

問題:

您傳遞了錯誤的上下文

Intent i = new Intent(this, Item_Activity.class); 

解決方案:

用途:YourActivityName.this而不是簡單地使用this

例如, Intent i = new Intent(CurrentActivityName.this, Item_Activity.class);

2

Add ActivityName.this instead of this only,

Intent i = new Intent(ActivityName.this,Item_Activity.class);