我的應用程序包含許多對話窗口。它已經到了源頭似乎壓倒一切的地步。我正在尋找有關分離Dialog源的最佳方法的意見。我對Java比較陌生,所以我假設我可以將它們放在一個單獨的類中。但是,在Android中完成此操作的確切方式暗示我。願有人指出我正確的方向?如何在應用程序中組織Android對話框源代碼?
1
A
回答
1
您可以通過擴展對話創建對話如下 1.爲customDialog創建Layout.xml 創建一個包含視圖的新佈局。在這個例子中,我使用了edittext和button。
<?xml version="1.0" encoding="utf-8"?>
<EditText android:id="@+id/EditText01" android:layout_height="wrap_content" android:text="Enter your name" android:layout_width="250dip"></EditText>
<Button android:id="@+id/Button01" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="click"></Button>
創建自定義對話框類。 a。 b。創建一個類擴展對話框類 b。創建一個事件處理程序接口作爲成員 c。在onCreate方法中使用自定義佈局。
public class MyCustomDialog extends Dialog { public interface ReadyListener { public void ready(String name); } private String name; private ReadyListener readyListener; EditText etName; public MyCustomDialog(Context context, String name, ReadyListener readyListener) { super(context); this.name = name; this.readyListener = readyListener; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.mycustomdialog); setTitle("Enter your Name "); Button buttonOK = (Button) findViewById(R.id.Button01); buttonOK.setOnClickListener(new OKListener()); etName = (EditText) findViewById(R.id.EditText01); } private class OKListener implements android.view.View.OnClickListener { @Override public void onClick(View v) { readyListener.ready(String.valueOf(etName.getText())); MyCustomDialog.this.dismiss(); } }
}
創建MainActivity貫徹CustomDialog
公共類MainActivity延伸活動{ /**調用在首次創建時的活性。 */ @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); MyCustomDialog myDialog = new MyCustomDialog(this,「」, new OnReadyListener()); myDialog.show(); } 私有類OnReadyListener實現MyCustomDialog.ReadyListener { @覆蓋 公共無效就緒(字符串名稱){ Toast.makeText(MainActivity.this,名稱,Toast.LENGTH_LONG).show(); }} }
相關問題
- 1. 如何組織Android對話框ID?
- 2. 從android代碼關閉應用程序時顯示對話框
- 3. 在eclipse中組織android應用程序
- 4. 如何在android中查看應用程序的源代碼
- 5. 如何在Android應用程序中防止choosePrivateKeyAlias對話框?
- 6. 如何在Android應用程序中創建進度對話框
- 7. 如何在應用程序中組織DI框架的使用?
- 8. 在xcode中組織代碼,其中代碼用於多個應用程序
- 9. 如何組織Python源代碼文件?
- 10. 在mvc3應用程序中組織代碼的最佳實踐
- 11. 在MVC應用程序中組織JS代碼
- 12. 如何將Android源代碼組織到文件夾中
- 13. 推特Android應用程序 - 源代碼
- 14. Android Twitter應用程序源代碼
- 15. 在TFS 2010中組織源代碼
- 16. 如何組織資源在Web應用程序的URL結構
- 17. 如何運行我從Android源代碼獲取的應用程序源代碼?
- 18. 如何關閉電源,從應用程序重啓對話框?
- 19. 如何在Android源代碼中添加Android Studio創建的應用程序?
- 20. 如何在組織內部部署Android應用程序?
- 21. 我的Android應用程序的密碼對話框
- 22. 有多個複選框的對話框android源代碼
- 23. 的源代碼組織使用的CocoaPods
- 24. 如何組織Rails應用程序
- 25. 對Android應用程序的困惑圖形源代碼路徑
- 26. 我應該如何爲基於框架的項目組織源代碼管理?
- 27. 大多數人如何組織應用程序中的代碼(子文件夾)?
- 28. 如何從對話框代碼中關閉jQuery UI對話框?
- 29. 提交給蘋果之前iPhone應用程序源代碼的組織
- 30. 編譯Android應用程序源代碼+代碼檢查
我認爲,如果你指定你的問題有點多,這將有助於。您的應用中有多少項活動?對話是每個特定於一個活動,還是有一個可能從不同的活動打開的對話框? – Cephron 2012-02-24 03:55:47
所有對話框窗口都屬於一個活動,並且它們不能在其外部訪問。我只是尋找一種聰明的方式來以便捷的方式封裝所有的對話框窗口。任何幫助將是偉大的,謝謝! – mas 2012-02-24 05:18:34