2012-06-30 6 views
3

Я создал таблицу, в которой моя высота строки таблицы слишком мала, поэтому я хочу увеличить высоту строки таблицы, пожалуйста, направляйте мне таблицу динамически созданной, У меня есть идея.Увеличить ширину tablerow динамически созданного tablelayout

код: Я попытался указать ширину в Latoutparam целого числа, но не работает

public void createTableLayout() 
{ 
    String status="Pending"; 
    TextView txtid=(TextView)findViewById(R.id.txtcid); 
    //TextView txtdate=(TextView)findViewById(R.id.txtDate); 
    txtid.setText("Customer Id/Name : "+shopnum+"/"+shopname1); 
    btnorder1=(Button)findViewById(R.id.btnOrder123); 
    btnBack1=(Button)findViewById(R.id.btnBack1); 
    txtTotalAmount=(TextView)findViewById(R.id.txtTotalAmt); 
    btnorder1.setOnClickListener(new View.OnClickListener() 
    {  
     @Override 
     public void onClick(View v) 
     { 
      ShowcOrder1(); 
      int rcount=(table).getChildCount(); 
      SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); 
      String currentDateandTime = sdf.format(new Date()); 
      for(int r=1;r<rcount;r++) 
      { 
       TableRow row=(TableRow)table.getChildAt(r); 
       int vcount=(row).getChildCount(); 
      // String str= 
       for(int v1=0;v1<vcount;v1++) 
       { 
        TextView tv = (TextView)(((TableRow)row)).getChildAt(v1); 


    insertIntoOrderDetails(String.valueOf(orderid),ProdcutId,PackageId,Quantity); 
       } 
       insertIntoOrder(String.valueOf(orderid), currentDateandTime, shopnum,String.valueOf(roundtotal), sid); 
       Toast.makeText(getApplicationContext(), "Order Placed",Toast.LENGTH_LONG).show(); 
       finish(); 
      // Toast.makeText(getApplicationContext(), "round: "+roundtotal,Toast.LENGTH_LONG).show(); 
      } 

     }); 

     btnBack1.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View arg0) 
      { 
       // TODO Auto-generated method stub 
       finish(); 
      } 
     }); 

     //txtdate.setText("Order Date is : "+odate); 
      table = (TableLayout) findViewById(R.id.tbpastorderdetails); 
      TableRow tr_heading = new TableRow(Pastorder.this); 
      tr_heading.setId(10); 
      tr_heading.setBackgroundColor(Color.BLACK); 
      tr_heading.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT)); 

      TextView label_product_id = new TextView(Pastorder.this); 
      label_product_id.setId(20); 
      label_product_id.setText("PID"); 
      label_product_id.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_product_id); // add the column to the table row 

      //TextView label_question = new TextView(this); 
      TextView label_package_id = new TextView(Pastorder.this); 
      label_package_id.setId(20); 
      label_package_id.setText(" Pack.ID"); 
      label_package_id.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_package_id); // add the column to the table row 


      //TextView label_question = new TextView(this); 
      TextView label_product = new TextView(Pastorder.this); 
      label_product.setId(20); 
      label_product.setText(" PRODUCT"); 
      label_product.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_product); // add the column to the table row 
               // here 
     // Toast.makeText(ExaminationActivity.this,"hi try ",Toast.LENGTH_LONG).show(); 
      //TextView label_answer = new TextView(this); 
      TextView label_catagory = new TextView(Pastorder.this); 
      label_catagory.setId(21);// define id that must be unique 
      label_catagory.setText(" CATAGORY"); // set the text for the header 
      label_catagory.setTextColor(Color.WHITE); // set the color 
      // label_weight_kg.setPadding(5, 5, 5, 5); // set the padding (if 
      // required) 
     // label_weight_kg.setPadding(2, 2, 2, 2); 
      tr_heading.addView(label_catagory); // add the column to the table row 
                // here 


      //TextView label_youranswer = new TextView(this); 
      TextView label_package = new TextView(Pastorder.this); 
      label_package.setId(20); 
      label_package.setText(" PACKAGE"); 
      label_package.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_package); // add the column to the table row 
               // here 
      TextView label_weight = new TextView(Pastorder.this); 
      label_weight.setId(20); 
      label_weight.setText(" WEIGHT"); 
      label_weight.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_weight); // add the column to the table row 

      TextView label_qty = new TextView(Pastorder.this); 
      label_qty.setId(20); 
      label_qty.setText(" QUANTITY"); 
      label_qty.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_qty); // add the column to the table row 

      TextView label_amt = new TextView(Pastorder.this); 
      label_amt.setId(20); 
      label_amt.setText(" AMOUNT"); 
      label_amt.setTextColor(Color.WHITE); 
      //label_question.setPadding(2, 2, 2, 2); 
      // label_date.setPadding(5, 5, 5, 5); 
      tr_heading.addView(label_amt); // add the column to the table row  
      table.addView(tr_heading, new TableLayout.LayoutParams(
        LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); 
     } 

public void addRows() 
{ 
    try 
    {    
     msaledb = openOrCreateDatabase(DBNAME, Context.MODE_PRIVATE,null); 
     Cursor allrows = msaledb.rawQuery("SELECT * FROM " + PRODUCT_TABLE+" WHERE Product_ID = '" + pid +"'", null); 
     Cursor allrows1 = msaledb.rawQuery("SELECT * FROM " + PACKAGING_TABLE ,null); 
     if(allrows.moveToFirst() && allrows1.moveToFirst())// && allrows1.moveToFirst()) 
     {   
      int i=1;  
      do 
      { 
       tr = new TableRow(Pastorder.this); 
       tr.setId(i); 
       tr.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT)); 

       TextView tvpid = new TextView(Pastorder.this); 
       tvpid.setId(11); 
       tvpid.setText(""+pid); 
       tvpid.setPadding(2, 0, 5, 0); 
       tvpid.setTextColor(Color.BLACK); 
       tr.addView(tvpid); 

       TextView tv_pack_id = new TextView(Pastorder.this); 
       tv_pack_id.setId(12); 
       tv_pack_id.setText(" "+packid); 
       tv_pack_id.setPadding(2, 0, 5, 0); 
       tv_pack_id.setTextColor(Color.BLACK); 
       tr.addView(tv_pack_id); 

       TextView tv = new TextView(Pastorder.this); 
       tv.setId(1); 
       tv.setText(" "+allrows.getString(2)); 
       tv.setPadding(2, 0, 5, 0); 
       tv.setTextColor(Color.BLACK); 
       tr.addView(tv); 
       TextView tv1 = new TextView(Pastorder.this); 
       tv1.setId(2); 
       tv1.setText(" "+allrows.getString(3)); 
       tv1.setPadding(2, 0, 5, 0); 
       tv1.setTextColor(Color.BLACK); 
       tr.addView(tv1); 
       do 
       { 
       if(allrows1.getString(1).trim().equals(packid.trim()) && allrows1.getString(2).trim().equals(pid.trim())) 
       { 
//      Toast.makeText(getApplicationContext(), ""+allrows1.getString(2).trim(),Toast.LENGTH_LONG).show(); 
//      Toast.makeText(getApplicationContext(), ""+p_id.get(0).trim(),Toast.LENGTH_LONG).show(); 
         TextView tv2 = new TextView(Pastorder.this); 
         tv2.setId(3); 
         tv2.setText(" "+allrows1.getString(3)); 
         tv2.setPadding(2, 0, 5, 0); 
         tv2.setTextColor(Color.BLACK); 
         tr.addView(tv2);       
         TextView tv3 = new TextView(Pastorder.this); 
         tv3.setId(4); 
         tv3.setText(" "+allrows1.getString(4)); 
         tv3.setPadding(2, 0, 5, 0); 
         tv3.setTextColor(Color.BLACK); 
         tr.addView(tv3);       
         TextView tv4 = new TextView(Pastorder.this); 
         tv4.setId(4); 
         tv4.setText(" "+qty); 
         tv4.setPadding(2, 0, 5, 0); 
         tv4.setTextColor(Color.BLACK); 
         tr.addView(tv4);       
         TextView tv5 = new TextView(Pastorder.this); 
         tv5.setId(4); 
         tv5.setText(" "+Integer.parseInt(allrows1.getString(6).trim())*Integer.parseInt(qty.trim())); 
         tv5.setPadding(2, 0, 5, 0); 
         tv5.setTextColor(Color.BLACK); 
         tr.addView(tv5); 

       } 
       }while(allrows1.moveToNext()); 

       table.addView(tr, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); 

       i++; 
       tr.setOnClickListener(new View.OnClickListener() 
       { 
        public void onClick(View view) 
        { 
         view.setBackgroundColor(Color.LTGRAY); 
         // Toast.makeText(getApplicationContext(),""+tr.getId(),Toast.LENGTH_LONG).show(); 
         tr1=(TableRow)view; //assign selected TableRow gobally 
         registerForContextMenu(tr1); 
         openContextMenu(tr1); 
        } 
       }); 

      }while(allrows.moveToNext()); 

      } 

    } 
    catch(Exception e) 
    { 
      Toast.makeText(getApplicationContext(), "Error in search", Toast.LENGTH_LONG).show(); 
    } 
} 
+0

разместить код, который используется для создания таблицы – FoamyGuy

+0

я отправил свой код у предложить мне что-то, если у вас есть какое-либо идеи заранее спасибо – Sumit

ответ

2

Параметры макета TableRow должны быть содержанием обруча. Вместо того, чтобы пытаться расширить строку, чтобы соответствовать вашим потребностям, попробуйте вручную установить соответствующие параметры макета в представлениях, которые находятся внутри объекта TableRow. Обернуть контент или заполнить родительский элемент не получится, попробуйте поиграть с фактическими пикселями плотности.

Надеется, что это помогает

+0

Бинго, который работал .. спасибо люди – Sumit