2016-02-27 52 views
1

從sqlite數據庫中檢索值並嘗試動態顯示值。動態視圖未正確加載

這是我的檢索值,

List<PendingOrdersDao> contacts = db.getAllPendingOrders(); 

for (PendingOrdersDao cn : contacts) { 
     initView(cn.getProformoInvoiceNumber(), cn.getProformoInvoiceDate()); 
} 

當我調用initView方法,應該添加視圖佈局動態地取決於存在於分貝的條目的數量。以下是我的initView方法。

private void initView(String proformaInvoice, String invoiceDate){ 

     LinearLayout mLinearLayoutContainer = (LinearLayout) mRootView.findViewById(R.id.dashboard_container); 
     LayoutInflater inflater = getActivity().getLayoutInflater(); 
     View v = inflater.inflate(R.layout.dashboard_fragment, mLinearLayoutContainer, false); 

     mProformaInvoice = (TextView) v.findViewById(R.id.dashProformaInvoiceNo); 
     mInvoiceNumber = (TextView) v.findViewById(R.id.dashInvoiceNo); 

     mProformaInvoice.setText(proformaInvoice); 
     mInvoiceNumber.setText(invoiceNumber); 

     mLinearLayoutContainer.addView(v); 
    } 

的問題是,有三個項目在DB因此3views應當顯示,但它顯示只有一個視圖

+0

嘗試inflater.inflate(layoutResId,null) – fillobotto

+0

只有數據庫中的最後一個條目變得膨脹了嗎? –

+0

是的,它是最後一個條目 –

回答

1

這是我的工作代碼: -

for (int i = 0; i < 3; i++) { 
     LinearLayout mLinearLayoutContainer = (LinearLayout) findViewById(R.id.test_container); 
     LayoutInflater inflater = getLayoutInflater(); 
     View v = inflater.inflate(android.R.layout.simple_list_item_1, mLinearLayoutContainer, false); 
     mTextView = (TextView) v.findViewById(android.R.id.text1); 
     mTextView.setText("This is i : " + i); 
     mLinearLayoutContainer.addView(v); 

    } 

看是否可以幫助你。 :)

+1

你有什麼奇怪的嗎? –

+0

仍然存在相同的問題 –

+1

即使添加方向後? –

1
  1. 首先,檢查聯繫人列表的大小。

  2. 您是否爲您的linear layout設置了正確的方向?垂直還是水平?

建議

  • 爲什麼不使用RecyclerViewListView