在前面的文章《使用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" />
```