在前面的文章《使用Android Studio创建Android项目详细步骤及注意事项》中,我们已经介绍了如何创建一个基本的Android应用程序。接下来,南昌APP开发公司的工程师将为您介绍如何规划和设计用户界面布局。

一、用户界面设计

1. 首先,我们需要了解当前的activity_quiz.xml文件定义了默认的activity布局。应用默认的XML布局文件内容经常改变,但总是与以下代码相似:

```xml

xmlns:tools=“http://schemas.android.com/tools”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:paddingLeft=“@dimen/activity_horizontal_margin”

android:paddingRight=“@dimen/activity_horizontal_margin”

android:paddingTop=“@dimen/activity_vertical_margin”

android:paddingBottom=“@dimen/activity_vertical_margin”

tools:context=“.QuizActivity”>

android:text=“@string/hello_world”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content” />

```

2. 应用activity的默认布局定义了两个组件(widget):RelativeLayout和TextView。组件是用户界面的构造模块。组件可以显示文字或图像,与用户交互,甚至布置屏幕上的其他组件。按钮、文本输入控件和选择框等都是组件。

Android SDK内置了多种组件,通过配置各种组件可获得所需的用户界面及行为。每一个组件都是View类或其子类(如TextView或Button)的一个具体实例。下面我们将介绍如何使用这些组件来构建QuizActivity的用户界面。

首先,我们需要一个垂直LinearLayout组件、一个TextView组件、一个水平LinearLayout组件以及两个Button组件。图1-10展示了如何将这些组件布置并显示在屏幕上。

接下来,我们在activity_quiz.xml文件中定义这些组件。代码清单1-2展示了如何在XML文件中定义组件。注意,需删除的XML已打上删除线,需添加的XML以粗体显示。我们统一使用这样的版式约定。

activity_quiz.xml文件内容如下:

```xml

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

android:paddingBottom="@dimen/activity_vertical_margin"

tools:context=".QuizActivity">

android:id="@+id/textView"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/hello_world" />

```

在这个例子中,我们使用了RelativeLayout作为根布局,然后在其中添加了一个TextView组件和一些其他组件。你可以根据需要在activity_quiz.xml文件中添加更多的组件来构建QuizActivity的用户界面。

```xml

android:layout_width="wrap_content"

android:layout_height="wrap_content">

android:layout_width="match_parent"

android:layout_height="match_parent"

android:gravity="center"

android:orientation="vertical">

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="24dp"

android:text="@string/question_text" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:orientation="horizontal" />

```