我对Android开发很陌生,并希望确保我正确构建我的应用程序。首先,让我解释一下需要什么。
应用程序启动时会提示用户输入访问代码,具体取决于他们的响应,可以显示两个结果菜单。一个菜单有5个按钮,而另一个菜单增加了两个额外的按钮,共有7个。这些按钮中的每一个都会将我带到一个不同的视图,其中将显示更多信息。
我最初开始用一个活动和每个视图的不同XML文件编写它。但是,我在网上研究的越多,似乎每个视图都应该有不同的活动。但是现在我相对困惑的是如何在初始化任何活动之前提示用户输入。
如果有人有任何意见,我会非常感激。
由于
答案 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中,并使用它来启动新活动。然后在该新活动中将信息从意图中拉出来。