2013-03-01 66 views
15

我正在做一個Popup與3紡紗和一個EditText。在閱讀了許多博客和文章後,我無法決定哪個是最佳選擇,PopupWindowDialogFragment我應該使用PopupWindow還是DialogFragment來接受輸入?

的標準是:

  1. 兼容性不同Android的版本
  2. 性能

如果有更好的方式來做到這一點,我打開來改變視角。

非常感謝。

DialogFragment:

  • 優點:
  • 缺點:

PopupWindow:

  • 優點:
  • 缺點:

編輯:結論

DialogFragment讓您使用更復雜的功能。另一個重要的事情是它更便於使用,因爲它允許用戶一次打開多個片段。碎片是一個更加動態的解決方案,它們是新版Android版本的標準。

PopupWindow更簡單,它對用戶的簡單問題很有幫助。

+0

什麼決定讓你縮小到其中的一個(你知道任何優點或缺點嗎?)。另外,考慮發佈你想要的圖片。這些變化將使這個全明星發佈。 – Phil 2013-03-01 19:40:18

+0

謝謝菲爾,我會盡力改善這個問題! – eyyo 2013-03-01 19:41:22

回答

29

支持庫可以給你一個DialogFragment這是與老版本的Android兼容。繼續使用片段對話框cuz你所要求的是非常特殊的(3個spinners和一個edittext),只需右鍵點擊你的項目並按下「Android工具」 - >「添加支持庫」 確保當你使用對話框進口

import android.support.v4.app.DialogFragment; 

否則你會最終使用不支持的對話框:P。你必須與對話片段,並用自己做你認爲合適的視圖(即使是佈局的功率更大的靈活性)沒有太多的努力。

對話片段

優點:

  • 能夠添加任何視圖
  • 輕鬆編輯
  • 可適應在橫向或縱向藥片或手機只是通過修改佈局
  • 可以奉獻一個全新的課程來修改您的方式

缺點:

  • Cosumes更多內存的更復雜的是你的看法
  • 更難代碼

彈出窗口:

優點:

  • 簡單
  • 易於編碼
  • 它更標準所以就更難了用戶與它混淆

缺點:

  • 簡單,這意味着在它
  • 有限公司較少的控制到幾個模板

這些只是從我的頭腦和我的經驗,但你應該閱讀文檔

http://developer.android.com/reference/android/widget/PopupWindow.html

http://developer.android.com/reference/android/app/DialogFragment.html

+0

好的答案但丁! – eyyo 2013-03-02 18:12:24

+0

謝謝!如果這回答你的問題,你能接受嗎? – Dante 2013-03-04 12:07:35

+0

謝謝但丁!祝你有個好的一天! – eyyo 2013-03-04 14:34:25

1

如果你需要的EditText在你的窗口,想要讓你的用戶能夠在它和粘貼(編輯文本的正常行爲),以長按則不要使用popupwindow ,我發現它在這麼辛苦的方式:

一個相當大的缺點 popupwindow是長按上編輯文本不會帶來默認的上下文菜單(複製/粘貼/全選,...),也有一些報道在某些設備中,這實際上導致應用程序崩潰。看到這個 https://code.google.com/p/android/issues/detail?id=62508

相關問題