2016-05-26 68 views
1

您好我在列表視圖中使用凍結概念, 行包含文本視圖和編輯文本,如果我改變任何編輯文本,它應該更新其他列Textview是可能的嗎? Currenly我使用https://github.com/InQBarna/TableFixHeaders的Android庫列表視圖凍結與Textviews和編輯文本在一行

enter image description here

這裏是我的適配器類:

當我改年齡在EditText上我需要根據年齡輸入來改變高度。

public class FamilyNexusAdapter extends BaseTableAdapter { 

      private final int[] widths = { 100, 100, 100 }; 
      private final float density; 
      private Vector<ProductMasterBO> items; 

      public FamilyNexusAdapter(Context context, Vector<ProductMasterBO> items) { 
       density = context.getResources().getDisplayMetrics().density; 
       this.items = items; 

      } 

      @Override 
      public int getRowCount() { 
       return this.items.size(); 
      } 

      @Override 
      public int getColumnCount() { 
       return 3; 
      } 
       @Override 
      public View getView(final int row, int column, View convertView, 
        ViewGroup parent) { 
       String headerString[] = { "column 1", "column 2", "column 3", 
         }; 


      if (row == -1) { 

         convertView = getLayoutInflater().inflate(
           R.layout.item_table_header_first, parent, false); 

        ((TextView) convertView.findViewById(R.id.product_name)) 
          .setText(headerString[column + 1]); 


       } else{ 
       user= (UserMaster) items.get(row); 


       if(column==-1){ 
         txt=user.getuserName(); 
            ((TextView) convertView.findViewById(R.id.user_name)) 
          .setText(headerString[column + 1]); 


        }else if(column==1){ 
         txt=user.getage()+""; 

           EditText age = (EditText) convertView 
           .findViewById(R.id.age); 
         age.setText(txt); 
    age .addTextChangedListener(new TextWatcher() { 
          public void afterTextChanged(Editable s) { 
           String ageString= s.toString(); 
            if (!qty.equals("")) { 

    }} 
    public void beforeTextChanged(CharSequence s, int start, 
            int count, int after) { 
          } 

     public void onTextChanged(CharSequence s, int start, 
            int before, int count) { 
    //i want to handle when i am trying to change age height should be change 
          } 
         }); 
        }else if(column==2){ 
         txt=user.getheight()+""; 

     ((TextView) convertView.findViewById(R.id.user_name)) 
          .setText(txt); 
        } 

    return convertView; 
        } 
+0

是的,這是可能的。 – Nanoc

+0

@nanoc在凍結getview結構---查看getView(最終int行,int列,查看convertView,ViewGroup父級)。所以它被稱爲column by column.how我可以更新其他視圖。 –

+0

保留對它的引用 – Nanoc

回答

0

使用viewHolder模式,並設置EditTexttag屬性引用的TextView