2016-11-12 22 views
1

林回收視圖試圖在對話,但對話框不顯示任何添加回收看法......我增加了關於回收視圖卡和要顯示在對話框如何添加在對話框

android.support.v7.app.AlertDialog.Builder dialog = new android.support.v7.app.AlertDialog.Builder(getContext()); 
LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
View dialogView = inflater.inflate(R.layout.last_transaction_report, null); 
recyclerView = (RecyclerView) dialogView.findViewById(R.id.transactio_rep_recyclerView); 
dialog.setView(dialogView); 

AlertDialog alertDialog = dialog.create(); 
// alertDialog.setContentView(dialogView); 
alertDialog.show(); 

adapter = new TransactionReportCardAdapter(listTransactionDetails, this); 
recyclerView.setAdapter(adapter); 

回答

0

可以回收視圖創建一個佈局包含RecyclerView然後將其設置對話框:

Dialog dialog = new Dialog(context); 
dialog.setContentView(R.layout.your_layout); 
RecyclerView recyclerView = (RecyclerView) dialog.findViewById(your recycler); 
0
TransactionReportCardAdapter adapter = new TransactionReportCardAdapter(listTransactionDetails, context); 
adapter.setAdapter(themeAdapter); 
recyclerView.setHasFixedSize(true); 
recyclerView.setLayoutManager(new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false)); 

你應該使用LayoutManager因爲它負責測量與定位項意見在RecyclerView

3

假設R.layout.dialog_layout與recyclerview佈局

Dialog dialog = new Dialog(context, R.style.DialogSlideAnim); 
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
dialog.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); 
dialog.setContentView(R.layout.dialog_layout); 
dialog.setCanceledOnTouchOutside(true); 
dialog.setCancelable(true); 
dialog.show(); 

RecyclerView rvTest = (RecyclerView) dialog.findViewById(R.id.rvTest); 
rvTest.setHasFixedSize(true); 
rvTest.setLayoutManager(new LinearLayoutManager(context)); 
rvTest.addItemDecoration(new SimpleDividerItemDecoration(context, R.drawable.divider)); 

DataDialogAdapter rvAdapter = new DataDialogAdapter(context, rvTestList); 
rvTest.setAdapter(rvAdapter); 

styles.xml

<style name="DialogSlideAnim" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowAnimationStyle">@style/DialogAnimation</item> 
</style> 
<style name="DialogAnimation"> 
    <item name="android:windowEnterAnimation">@anim/slide_up_dialog</item> 
    <item name="android:windowExitAnimation">@anim/slide_down_dialog</item> 
</style> 
+0

setAdapter(不能應用於LastTransactionsAdapter類 –

+0

@suraj什麼是LastTransactionsAdapter類? –

+0

在textview上設置數據,並將這些textview添加到cardview上 –

-1

試試:)中recyclerView

  val dialogBuilder = AlertDialog.Builder([email protected]) 
      val rcvDialog = RecyclerView([email protected]) 

      rcvDialog.adapter = DialogAdapter(ArrayList<Item>) //DialogAdapter create by your self 
      rcvDialog.layoutManager = LinearLayoutManager([email protected]) 
      dialogBuilder.setView(rcvDialog) 

      val dialog: Dialog = dialogBuilder.create() 
      dialog.show() 
相關問題