Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.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
我是否正确创建我的android应用程序?它会以任何方式影响性能吗?_Android_Performance_Android Activity - Fatal编程技术网

我是否正确创建我的android应用程序?它会以任何方式影响性能吗?

我是否正确创建我的android应用程序?它会以任何方式影响性能吗?,android,performance,android-activity,Android,Performance,Android Activity,所以我的应用程序基本上是这样工作的。有一系列的物理方程可供选择。每个等式(即:Vf=Vi+at)都有自己的整个活动(使用xml和java)。下面是一个关于等式的活动的示例: () 假设我想为我的应用程序创建100个方程式我还需要创建100个单独的活动吗? -如果是,那么它会影响性能吗?apk文件的大小会增加多少?是否有一种简单的方法将活动分类到目录中? -如果没有,那么我如何将这些“100个单独的活动”组合成更少的活动 到目前为止,我只做了3个方程式,我为每个方程式创建了一个单独的活动。下面是选

所以我的应用程序基本上是这样工作的。有一系列的物理方程可供选择。每个等式(即:Vf=Vi+at)都有自己的整个活动(使用xml和java)。下面是一个关于等式的活动的示例:

()

假设我想为我的应用程序创建100个方程式我还需要创建100个单独的活动吗?

-如果是,那么它会影响性能吗?apk文件的大小会增加多少?是否有一种简单的方法将活动分类到目录中? -如果没有,那么我如何将这些“100个单独的活动”组合成更少的活动

到目前为止,我只做了3个方程式,我为每个方程式创建了一个单独的活动。下面是选择页面的外观

()

示例: 如果我从微调器中选择“最终速度求解”选项,它将执行以下命令并打开选定方程式的活动

//What happens when user chooses a category
 if(position == 1){
 startActivity(vf);

与其调用多个活动,不如尝试使用同一个活动并相应地操作视图及其内容

示例

如果用户从微调器中选择“最终速度求解”选项,它将执行以下操作

Intent i;

if(position == 1){ 
 i = new Intent(this,SecondActivity.class);
 i.putExtra("Action","Equation1");
 startActivity(i);
}else{
 i = new Intent(this,SecondActivity.class);
 i.putExtra("Action","Equation2");
 startActivity(i);
}
...
在SecondActivity.java中

String input1,input2, formula;

String Action = getIntent().getExtras().getString("Action");
//now you have "What to do solved"

switch(Action){
  case "Equation1" :
      //manipulate your formula for Equation1
  break;
  case "Equation2" : 
     //manipulate your formula for Equation2
  break;
}
如果不需要特定方程式,甚至可以隐藏特定视图


希望这能有所帮助。

欢迎您使用100个版面,而不是100个活动。您的方法没有问题。没有性能问题,没有巨大的apk尺寸,没有缺点。当然,除了必须导航100个布局文件之外,您还可以尝试按所需的输入/输出值对它们进行分组。如果你有3个方程,其中2个输入值和1个结果,5个方程,其中3个输入值和1个结果,你只需要2个活动。但在您的情况下,最好在代码中构建UI,而不接触任何布局xml文件。这样,您可以根据需要动态创建任意数量的文本视图或编辑文本。您只需要一个模型,该模型用所需的输入/输出及其名称来描述方程。您不能创建一个包含标题、输入量、输入描述和计算的方程对象数组列表吗。然后以编程方式更新UI。xml布局如何?比如,有些方程需要3个文本字段,有些需要4个字段。我仍然需要多个xml布局,也就是说,每个等式都需要单独的xml布局吗?只需要一个xml布局,其中包含最多所需的EditText。例如,如果所需的最大EditText为4,则在布局中有4个EditText,然后当特定方程式仅需要2个EditText时,隐藏其他2个EditText。和分别更改文本视图中的标题。