2013-04-26 56 views
0

我有一個的TableRow,我把它當點擊打開一個新的活動:的TableRow的onclick聽衆

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:stretchColumns = "1" 
android:shrinkColumns = "1"> 

<TableRow 
    android:id="@+id/tableRow1" 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
    android:gravity="center_vertical"> 

       //content 
</TableRow> 

TableRow row1 = (TableRow) item.findViewById(R.id.tableRow1); 
    row1.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 

      Log.i("click detected", "yes"); 
      Bundle bundle = new Bundle(); 
      bundle.putString("noticeID",String.valueOf(data[pos].getID())); 
      bundle.putString("title",data[pos].getTitle()); 

      Intent newIntent = new Intent(activity, ReadNotice.class); 
      newIntent.putExtras(bundle); 
     } 
    }); 

寫入日誌,但新的活動不開,我錯過了什麼?

+3

其中是startActivity(newIntent); ? – 2013-04-26 14:04:19

回答

1

你必須開始活動。 startActivity(newIntent);

+0

這麼愚蠢的錯誤!謝謝! – user1256477 2013-04-26 14:08:20

0
/************ if table row is dynamic then this method else method 2 is perfect************/ 
//if we want to applay listener on dynamic tablerow then use this 
//sure that perfect 
TablRowe tr = new TableRow(this); 
tr.setClickable(true); 
tr.setId(100);// if in loop then add 1 counter with 100 like (100+counter) at end count++ it 
tr.setOnClickListener(this); 
@Override 
    public void onClick(View v) 
{ 
     switch (v.getId()) 
     { 
     case 100: 
       Toast.makeText(getApplicationContext(), "100", Toast.LENGTH_SHORT).show(); 
      break; 

     case 101: 
      Toast.makeText(getApplicationContext(), "101", Toast.LENGTH_SHORT).show(); 
      break; 
} 
/************************** for simple like this ************************/ 
    TableRow row1 = (TableRow)findViewById(R.id.row1); 
row1.setonClickListener(this); 
public void onClick(View v) 
{ 
switch (v.getId()) 
     { 
     case R.id.row1: 
      // do work 
      break; 
      }   
}