各位看官们,大家好,上一回中咱们说的是Java多线程编程的例子,这一回咱们说的例子是Android版Hello World。闲话休提, 言归正转。让我们一起Talk Android吧!
看官们,在前面的章回中,我们介绍了Java的基本知识,有了这些基础后就可以介绍Android了,因此,从这一回开始,我们正式开始介绍Android相关的知识。洋洋洒洒将近三十回的内容都是Java相关的知识,有的看官都等不及了,什么时候开始介绍Android的呼声越来越强。现在终于不用等了,我们马上开始介绍Android,就在此时,就在此刻!
看官们,我们先来介绍一个简单的例子:Hello World.希望通过这个例子让大家对Android开发有个基本的认识。下面是具体的操作步骤,请大家参考:
- 1.搭建Android开发环境,只需要安装JDK和Android Studio(以后简称AST)就可以,安装的版本选择当前最新版本(我的开发环境是JDK 1.8和AST 2.2.3);
- 2.使用AST创建一个叫
BlogApp001
的新工程,并且填写包名,其它的步骤使用默认设置就可以; - 3.AST默认创建了一个空的布局,并且在布局中添加了文本控件(
TextView
)来显示文本; - 4.在布局中手动添加一个文件控件和按钮控件,它们都是用来显示文本;
- 5.编译并且运行该程序,运行的环境为模拟器,它需要通过AST的AVD工具来创建;
看官们下面是程序运行结果的截图,请大家参考:
从上面的运行结果中可以看到三个Hello World
!第一个是AST默认创建的,剩下的两个是我们在步骤4中添加的,为了区分,我们分别给它们设置了不同的颜色。不论是系统默认的,还是我们添加的,它们都是控件,而且都位于同一个布局中。
在Android开发中,我们把布局叫做Activity
,它是我们所看到的画面在程序中的载体。Android提供了xml文件控制它的显示效果,java文件来控制它的逻辑。下面我们来演示一下该程序中xml文件和java文件的代码:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/text_view"
android:textColor="@color/colorRed"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:textStyle="bold"
android:textColor="@color/colorGreen"
android:textAllCaps="false"/>
</LinearLayout>
我们省略了最外层的代码,只演示了核心的代码。从上面的代码中可以看到两个TextView
控件和一个Button
控件位于LinearLayout
控件中。结合程序的运行结果,我们就能明白这三个控件是用来显示Hello world
文本的,至于文本的颜色是通过控件的属性来控制的,我们就不详细介绍了,大家通过代码就能看明白。
有了显示效果后,我们看一下布局文件的逻辑处理。下面是java文件中的代码:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView)findViewById(R.id.text_view);
tv.setText("Hello World!");
}
}
从上面的代码中可以看到Activity
是通过Java中的类来处理相关代码逻辑了。在该类中,它继承了父类AppCompatActivity,
并且重写了父类的onCreate()
方法,所有的事情都放到了该方法中。其中最主要的事情是
setContentView(R.layout.activity_main);
这行代码,它把Activity
的布局文件和代码逻辑关联在了一起。说的更加直接一些:它把xml文件中的控件和布局加载到了Activity
中,这样我们就能在Java程序中操作xml中的各个控件了。比如我们在代码中把TextView
控件中的文本修改为:Hello World!
。当然了,所有关于控件的操作都要位于这行代码之后,要不然,控件还没有加载进来,我们如何去操作控件?这不是巧妇难为无米之炊吗?
看官们,我们来做个最后的总结:开发Android程序和这个Hello World程序完全相同,我们做的工作主要是设计布局和处理布局后面的逻辑。布局的设计涉及到许多控件,我们要在掌握各个控件的用法后才能明白如何更好地使用它们。比如我们这个程序中使用TextView
来显示文本内容是没有争议的,但是使用Button
来显示文本内容,就有点不伦不类了。当然了,我们在这个例子中只是用它和默认的文本对比的,没有其它方面的意思。
Android提供了很多控件,我们不可能在一个例子中全部介绍它们,不过大家也不用担心,我们会在后面的章回中介绍更多的控件给大家。设计好布局后就需要处理布局背后的逻辑,这个比设计而已更加复杂。同理,我们在后面的章回中会做相关的介绍。
各位看官,关于Android版Hello World的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!