如何构建我的Android应用程序

时间:2012-06-06 13:18:08

标签: android android-activity organization

我对Android开发很陌生,并希望确保我正确构建我的应用程序。首先,让我解释一下需要什么。

应用程序启动时会提示用户输入访问代码,具体取决于他们的响应,可以显示两个结果菜单。一个菜单有5个按钮,而另一个菜单增加了两个额外的按钮,共有7个。这些按钮中的每一个都会将我带到一个不同的视图,其中将显示更多信息。

我最初开始用一个活动和每个视图的不同XML文件编写它。但是,我在网上研究的越多,似乎每个视图都应该有不同的活动。但是现在我相对困惑的是如何在初始化任何活动之前提示用户输入。

如果有人有任何意见,我会非常感激。

由于

3 个答案:

答案 0 :(得分:2)

您需要在获得用户输入之前初始化活动。我认为,如果你去一个新的视图,它使用不同的类和xml布局是很常见的。因此,对于每个新视图,您可以创建一个扩展活动的新类,然后具有与该视图相关的xml文件。

为您展示的每个新视图设置这两个文件。

Java文件:

public class Activity1 extends Activity {
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.layout1);
   }
}

XML文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/layout1"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >

  //add any views

</LinearLayout>

答案 1 :(得分:1)

尝试:

-push activity1 with layout1
-pop inputDialog
- 单击ok ...左键关闭inputDialog -push Activity2 with layout2,继续使用extras从activity1输入

......等等;)

答案 2 :(得分:1)

我一直试图将我的程序分解为每个视图的活动和相应的xml布局。如果您有一个活动和所有这些布局,那么您可能会在该活动中拥有一个怪物代码块。我发现打破它会使它更容易阅读和调试。

至于在初始化活动之前提示用户,我并不完全清楚你的意思。您需要在任何事情发生之前加载活动,在您的情况下,它可以很容易地成为简单的密码接受活动。如果您正在讨论在活动之间传递信息,则可以将数据打包到intent中,并使用它来启动新活动。然后在该新活动中将信息从意图中拉出来。