0

我有一个 TableRow,单击时会打开一个新活动:

<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);
        }
    });

Log写好了,但是新的Activity没有打开,是不是漏了什么?

4

2 回答 2

1

你必须开始活动.. startActivity(newIntent);

于 2013-04-26T14:06:25.343 回答
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;
          }        
}
于 2014-12-24T18:36:37.353 回答