我正在开发一个 Android 应用程序,该应用程序将使用 aFragment
启动相机Intent
以捕获图像,然后片段还包含一些EditText
's 供用户在Intent
返回时填写。
我想知道启动意图的最佳位置(最佳实践)是什么?是在被覆盖的onCreate()
还是onCreateView()
方法中?
我正在开发一个 Android 应用程序,该应用程序将使用 aFragment
启动相机Intent
以捕获图像,然后片段还包含一些EditText
's 供用户在Intent
返回时填写。
我想知道启动意图的最佳位置(最佳实践)是什么?是在被覆盖的onCreate()
还是onCreateView()
方法中?
正如CommonsWare在第一条评论中所说,片段不应该Activity
从既不是onCreate
也不是onCreateView
。他的论点是,由于用户没有按下按钮,因此不应该采取任何行动。然而,在我的设计中,按下了一个"Add"
按钮,然后启动了我想要自动启动相机意图的片段。我这样做的原因是强迫用户先拍照,因为我的应用程序需要一张照片才能工作。然后,用户将填写一些其他字段并保存数据。
我现在意识到CommonsWare是对的。最好让用户单击另一个按钮,然后让他们惊讶于他们没想到的东西。我还意识到,在强制用户采取行动之前,让用户查看表单中需要哪些字段是个好主意。
我最终添加了一个ImageButton
带有相机图标的图标来启动意图,并且效果很好。