title: Dynamically add table row in table and display it in dialog box in android
body: <p>I am able to create a dialog box and show a table in it, but i wanted to add some more rows to it dynamically.</p>
  
  <p>These rows should have textviews in it (say 3 in a row).</p>
  
  <p>Please direct me on this.</p>
  
  <p>Thanks in advance</p>
  
  <p>My code, which is not working, is as follows:</p>
  
  <p>struct3x5 is layout file with table layout and table of 3x5 dimension</p>
  
  <p>1). On click event code</p>
  
  <pre><code> button.setOnClickListener(new OnClickListener()
       {
  
       public void onClick(View arg0) {
  
            final String NAMESPACE = "http://tempuri.org/";
              final String METHOD_NAME = "method";    
              final String SOAP_ACTION = "http://tempuri.org/method";
              final String URL = "http://xyz/pqr/webserv.asmx";
  
  
  
              // custom dialog
           final Dialog dialog = new Dialog(context,R.style.cust_dialog);
              dialog.setContentView(R.layout.struct3x5);
              dialog.setTitle("XYZ");
  
  
              // set the custom dialog components - text, image and button
              TextView text1 = (TextView) dialog.findViewById(R.id.textView1);
              text1.setText("");
  
              TextView text2 = (TextView) dialog.findViewById(R.id.textView2);
              text2.setText("Vehicle(Rs in Lacs)");
  
              TextView text3 = (TextView) dialog.findViewById(R.id.textView3);
              text3.setText("TPP(Rs in Lacs)");
  
              TextView text4 = (TextView) dialog.findViewById(R.id.textView4);
              text4.setText("PL(Rs in Lacs)");
  
              TextView text5 = (TextView) dialog.findViewById(R.id.textView5);
              text5.setText("Insurance(Rs in Lacs)");
  
              String [] data = {};
              String x = " ";
              int colsize = 5;
              int rowcount =(data.length)/colsize;
               try {
  
  
  SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);            
  SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
  envelope.dotNet = true;
  envelope.setOutputSoapObject(request);
  
                      HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
                      androidHttpTransport.call(SOAP_ACTION, envelope);
                      SoapObject response = (SoapObject)envelope.getResponse();
                      data = getarray(response);
                  }            
                  catch (Exception e){
                      Toast.makeText(classname.this,"error",Toast.LENGTH_LONG).show();
                                     }
               createtable(data,rowcount);
  
              dialog.show();
           }
        });
  </code></pre>
  
  <p>2). <strong>_Function to create table</strong></p>
  
  <pre><code>private void createtable(String[] data, int rowcount) {
      // TODO Auto-generated method stub
      LinearLayout t1=(LinearLayout)findViewById(R.id.tableLayout3x5);
      //TextView[] tva= new TextView[data.length];
  
      int count =0;
      for(int i=0;i&lt;rowcount;i++)
      {
          TableRow tr=new TableRow(this);
      tr.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
          for(int j=0;j&lt;(data.length/rowcount); j++)
          {
              TextView text = new TextView(this);
              text.setText(data[count].toString());
      text.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL));
              tr.addView(text);
              count++;
          }
          t1.addView(tr, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
      }
  }           
  </code></pre>