2013-04-01 35 views
2
protected void onResume(){ 
     listTimer = (ListView) findViewById(R.id.listTimer); 
     fetchData(); 
     tadapt = new TimerAdapter(RoutineList, this); 
     listTimer.setAdapter(tadapt); 
     listTimer.performItemClick(v1, 0, listval); 
     super.onResume(); 
    } 

listTimer.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
        long arg3) { 
       // TODO Auto-generated method stub 


       v1 = arg0; 
       pos = arg2; 
       listval = arg3; 
       View v = arg0.getChildAt(arg2); 
       TextView tvM = (TextView) v.findViewById(R.id.tvETimer); 
} 

注意:我在視圖上得到了Nullpointerexception。Nullpointerexception itemclick事件的列表視圖

回答

5

已經認爲是在變量ARG1 ..沒有必要再次分配給另一個變量v ..

嘗試......

listTimer.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      // TODO Auto-generated method stub 

      v1 = arg0; 
      pos = arg2; 
      listval = arg3; 
      TextView tvM = (TextView) arg1.findViewById(R.id.tvETimer); 
} 
+0

它給出了相同的錯誤。 – Riser

+0

是您的活動列表活動?在哪一行顯示錯誤? – Deepzz

+0

沒有..它沒有列出活動。 – Riser

1

首先總是將super.onResume()作爲Activity.onResume()方法的第一條語句。

當您使用findViewById()ListView設置OnItemClickListener也。 我認爲這會解決你的問題。

+0

這不是問題。 – Tushar

2

檢查您是否在onResume方法之前調用setContentView,並且該佈局包含listTimer。這可能是您的觀點爲null的原因。

+0

它不工作.. – Riser

1

嘗試更換此字符串:

View v = arg0.getChildAt(arg2); 

View v = arg1; 
+0

它不工作。 – Riser

+0

由於適配器中存在一些問題,因此可能視圖爲空。檢查它如何創建視圖。 你可以發佈TimerAdapter代碼嗎? – QArea