2011-06-16 58 views
1

我在我的應用程序中顯示rss提要,並在每個RSS提要箭頭圖像旁邊有一個活動。click for listener for dynaically added imageview

我是新來的android任何幫助將不勝感激。

,我會解釋我在做什麼,顯示新聞...

我有一個RSS一個單獨的虛擬XML佈局..我已經爲箭頭圖像ID(這將導航到下一個活動)在它作爲iv_arrow_img 我正在迭代新聞飼料我得到和每個新聞飼料我一次又一次地添加啞視圖...我的問題是我將如何區分不同的圖像箭頭的ID ..因爲現在所有有相同的ID ...我將如何設置onclick聽衆給他們?

..... @devA 服用烏爾建議我已寫的代碼 迭代ITR = data.iterator(); int i = 0; (itr.hasNext()){ NewsPostDTO newspostdto = itr.next();

 view = inflater.inflate(R.layout.rl_news_item, null); 
     lnContentView.addView(view, LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); 


     ivArrowfwd = (ImageView) view.findViewById(R.id.iv_arrowfwd); 

     tvNewsHeading.setText(newspostdto.getFeaturedDesc()); 
     tvNewsContent.setText(newspostdto.getDate() + " - " + newspostdto.getTitle()); 
     ivArrowfwd.setId(id); 
     ivArrowfwd.setTag(newspostdto); 
     ivArrowfwd.setOnTouchListener(new OnTouchListener(){ 

      @Override 
      public boolean onTouch(View arg0, MotionEvent arg1) { 

           System.out.println("sdfsdf" +(ImageView) view.findViewById(id).getTag()); 

       return false; 
      } 
     }); 
     id++; 
    } 

,但我沒有對每個新聞gettng不同的標記以爲自己是唯一的.. u能告訴我哪裏做錯了......?

+0

爲什麼る加入相同再次形象n再次..? – ngesh 2011-06-16 06:32:36

+0

我必須爲每個新聞Feed放置一個箭頭圖像,我正在顯示...... .. – 2011-06-16 06:34:24

+0

對於需要導航到diff活動的每一條新聞..? – ngesh 2011-06-16 06:42:49

回答

1

有不同的方式來實現這一點,因爲它不清楚你正在使用和你如何連接視圖的佈局,

一種方式會是這樣,當你在動態填充視圖,使用什麼佈局在視圖上稱爲setTag(「uniqueid」)的方法,

唯一ID可能是url或其他視圖所獨有的其他內容,並且您將它們存儲在數組中,一旦視圖被填充,迭代數組,使用findViewWithTag 「uniqueid」)並設置監聽器。

+0

確定我添加了listners,但我怎麼會在onClick()方法中獲得這些視圖...例如,當ia獲取它使用R.id.arrowimgView ..它只是沒有做什麼? ??我必須更改圖像的ID也??? – 2011-06-16 06:47:43

+0

onClick(View v),使用v.getTag(),你將得到唯一的id,你可以根據不同來區分視圖。 – sat 2011-06-16 06:55:17

0

那麼有沒有問題,所有..

`image.setOnTouchListener(new OnTouchListener(){ 

@Override 
      public boolean onTouch(View arg0, MotionEvent arg1) { 
//start your activity.. 
}) 

`圖像。與目前的參考,它startActivity ..裏面沒有必要有差異的id ..

+0

@devA我已更新他發佈plz告訴我,我在哪裏做錯了 – 2011-06-16 07:34:14

+0

刪除該println()方法,並使用startActivity(context,yourActivityname.class)啓動活動; – ngesh 2011-06-16 07:37:02

+0

實際上,我必須通過新的崗位ID到我的活躍性,這將是每個新聞項目的獨特..我用prinln進行調試..當我點擊視圖getTag()給我最後的id我已設置爲imageview in tag ..不是關聯標籤... – 2011-06-16 07:41:19