Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该在创建自定义对话框时创建编辑文本还是在onCreate之前创建编辑文本?哪个更有效?_Java_Android_Performance_Processing Efficiency_Memory Efficient - Fatal编程技术网

Java 我应该在创建自定义对话框时创建编辑文本还是在onCreate之前创建编辑文本?哪个更有效?

Java 我应该在创建自定义对话框时创建编辑文本还是在onCreate之前创建编辑文本?哪个更有效?,java,android,performance,processing-efficiency,memory-efficient,Java,Android,Performance,Processing Efficiency,Memory Efficient,我有一个Android应用程序,我在其中创建了一个自定义对话框,它是从XML文件构建的。自定义对话框包含10个不同的编辑文本框。我的问题是,在MainActivity.java代码中,我应该在代码创建自定义对话框时创建这些edittext,还是应该在onCreate之前创建它们?哪一个更有效/最佳实践?每个都有自己的用途吗? 例如: 这里 EditText et1; @Override public void onCreate(Bundle savedInsta

我有一个Android应用程序,我在其中创建了一个自定义对话框,它是从XML文件构建的。自定义对话框包含10个不同的编辑文本框。我的问题是,在MainActivity.java代码中,我应该在代码创建自定义对话框时创建这些edittext,还是应该在onCreate之前创建它们?哪一个更有效/最佳实践?每个都有自己的用途吗?

例如:
这里

EditText et1;

        @Override
        public void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);...
public void dialogSettings() {

            final Dialog dialogBox = new Dialog(context);
            dialogBox.setContentView(R.layout.custom_dialog_settings);
            dialogBox.setTitle(R.string.action_settings);

            EditText et1;

            dialogBox.show();

        }

或此处

EditText et1;

        @Override
        public void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);...
public void dialogSettings() {

            final Dialog dialogBox = new Dialog(context);
            dialogBox.setContentView(R.layout.custom_dialog_settings);
            dialogBox.setTitle(R.string.action_settings);

            EditText et1;

            dialogBox.show();

        }

这完全取决于你想在哪里使用它。如果您仅在onCreate内部使用它,请在onCreate内部声明它,否则请全局定义它。

这不是创建EditText,而是初始化edittextmmm,更多的是声明EditText,我还没有用一个值初始化它,这让我想知道:假设我想加载一个带有自定义视图的对话框(我们在点击按钮时称之为
theView
)。在
onCreate
方法或按钮的
click
方法上加载并初始化
theView
会更好(性能方面)吗?如果您认为在活动中会多次单击按钮,最好全局初始化它(全局声明它并在onCreate中初始化)否则在button onClick方法中初始化它。