我想創建一個PdfDocument與用戶的視圖外側的機器人。基本上,我想生成與當前正在顯示的視圖不同的PdfDocument。一旦創建,它會通過電子郵件發送給用戶。我將我想要的所有內容都添加到了AlertDialog中,並且在解僱時,我將視圖保存爲pdf併發送電子郵件。創建Android PdfDocument用戶視圖外
final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
final View dialogView = inflater.inflate(R.layout.receipt_layout, null);
... add stuff to view
builder.setView(dialogView);
final Dialog dialog = builder.create();
dialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
... save pdf and send email
}
}
dialog.show();
WindowManager wm = (WindowManager) getActivity().getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
float density = getResources().getDisplayMetrics().density;
float dpHeight = outMetrics.heightPixels/density;
float dpWidth = outMetrics.widthPixels/density;
dialog.getWindow().setLayout(370, (int)dpHeight);
//dialog.dismiss(); // when uncommented, it produces a blank document
這個工作正常當警報顯示,我手動觸發解僱。但是,當我在顯示對話框後添加dialog.dismiss()時,它會生成一個空白文檔。我不確定是否有一個事件可以用來指示視圖可見/用於創建PDF,然後觸發dismiss()?或者,也許有一種更簡單的方法在用戶的視野之外做到這一點(閃爍很好)?