更简单的方法来创建和维护许多布局

时间:2013-07-30 17:09:27

标签: android android-layout

我有一个基本上是一个巨型计算器的应用程序。在这个应用程序中,它共有75个独特的方程式,每个方程式具有不同数量的变量和显示结果。我目前有一个滑动抽屉实现了它们的方程列表可供选择,当他们点击它时,我有一个片段区域放置屏幕进行计算。我目前正在为每个计算实现一个片段活动以及每个计算的布局。有谁知道用这么多屏幕完成某些事情的最佳做法是什么?我是否通过在活动中动态创建布局来完成它们?我能保持它是怎么回事吗?我只是想弄清楚我用这个做的繁琐工作是否能够以一种更简单的方式完成(我知道我必须创建活动来完成这项工作)。

编辑

根据计算,布局的复杂程度各不相同。其中一些是来自用户的第n个条目,需要gridview,而其他的只是简单,如下例所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android=blah blah
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_gravity="center_vertical"
   android:background="DCDCDC"
   android:orientation="horizontal" >

   <EditText
       android:id="@+id/etTempInput"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_margin="10dp"
       android:layout_below="@+id/tvTempInputLabel"
       android:ems="10"
       android:inputType="numberSigned" >
       <requestFocus />
   </EditText>

   <TextView
       android:id="@+id/tvTempInputLabel"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentTop="true"
       android:layout_marginTop="10dp"
       android:text="Medium_Text"
       android:textAppearance="?androd:attr/textAppearanceMedium" >
   </TextView>

   <Spinner
       android:id="@+id/spinner1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignBottom="@+id/etTempInput"
       android:layout_toRightOf="@+id/etTempInput"  />

   <TextView
       android:id="@+id/tvTempResult"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_below="@+id/etTempInput"
       android:layout_marginTop="22dp"
       android:text="Medium_Text"
       android:textAppearance="?androd:attr/textAppearanceMedium" >
   </TextView>

   <Button
       android:id="@+id/btnTempCalc"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_below="@+id/tvTempResult"
       android:text="Calculate" />

</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

在没有看到布局的情况下真的很难,但听起来动态构建布局(可能来自xml中的构建块)可以整理出来

答案 1 :(得分:0)

我对此的回答是只创建每个页面,因为页面之间没有一致性。我查看了几个选项,但没有一个满足我的需求。所以我来看看75个布局和代码文件。