Android Studio 4.0.1 Java开发安卓应用 2:TextView

首先我们先写一行代码,然后按住Ctrl键再用鼠标左键点一下,会出现一个对话框,我们选“Accept”(译:接受)。

Android Studio 4.0.1 Java开发安卓应用 2:TextView

然后我们就进入了TextView的源代码部分了。

TextView中包含了4个构造函数:

TextView(Context context)
TextView(Context context, @Nullable AttributeSet attrs)
TextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr)
TextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes)

不过在百度上并没有查到有关这4个构造函数的解释。

经测试,context可以使用this或getApplicationContext()函数这两种方式来设定上下文,其他的参数暂时未知。

使用this或getApplicationContext()函数均可使TextView控件在主界面上显示一段文本

为了防止影响到测试,我们先把activity_main.xml的部分代码删除掉(我在测试的时候就是因为默认的Hello World被坑了,调试了好久才发现原来是原始的数据没删除导致的问题……)

Android Studio 4.0.1 Java开发安卓应用 2:TextView

然后我们需要在activity_main.xml里增加一个LinearLayout,如图:

Android Studio 4.0.1 Java开发安卓应用 2:TextView

提示有错误,暂时不用管,因为我们为了学起来方便,采用的是动态创建控件的方法,没有在XML里写所以会提示错误,但不影响使用。

Layout属于Android平台上的容器,我们要把控件都放在容器里显示,这是规矩,遵守它就对了!不要问为什么。

TextView里有很多成员函数,我们不可能每一个都讲,就挑几个比较常用的讲讲就行了。

首先是setText函数,可以设置文本的内容,属于最常用的函数。

Android Studio 4.0.1 Java开发安卓应用 2:TextView

在Android中,我们在XML里创建了一个LinearLayout,要获取这个容器,就必须通过系统的findViewById函数获取ID值,格式为R.id.[id],这是规矩,遵守就对了!然后强制转换为LinearLayout并赋值到我们的临时变量中。通过容器的addView函数可以将控件放到容器中并显示到我们的窗口上。

而且经测试,TextView的构造函数不能是我们的临时变量ll,这点要注意!

然后我们再试一个函数:setTextSize,这个函数可以改变我们的字体大小,上面的ABC字体就非常小,我们几乎看不见,设置了TextSize后就不一样了,比如我设置20:

Android Studio 4.0.1 Java开发安卓应用 2:TextView

这下字体就清楚多了,当然你也可以设置的再大一点,我这就不演示了。

有一个函数跟网页上的效果一样,那就是:setPadding,我原先是网站程序员,所以看到这个函数感觉特别亲切,它支持四个参数,分别是left,top,right,bottom,就是设定了控件的内边距。

Android Studio 4.0.1 Java开发安卓应用 2:TextView

为了使控件更美观,我们还可以用一个函数设置控件的字体颜色:setTextColor,它支持两种方式来设置颜色,但我只看得懂一种,那就是用android.grapihcs.Color来设置,可以用数字常量也可以用字符串解析:

Android Studio 4.0.1 Java开发安卓应用 2:TextView

关于颜色设置,还有一个叫setBackgroundColor的函数,可以设置背景颜色,跟设置字体颜色的方式一样,这里就不多说了,不过还是给一个演示

Android Studio 4.0.1 Java开发安卓应用 2:TextView

控件怎么可能没有大小呢?所以现在就是setWidth和setHeight登场了,为了看得清楚这里把Padding给注释掉。

Android Studio 4.0.1 Java开发安卓应用 2:TextView

能用setText添加文字,就能追加文字,用的是append,在控件的内容最后追加文本

Android Studio 4.0.1 Java开发安卓应用 2:TextView

不过目前我们采用的是动态创建控件的方式,一般都是用的XML来布局,那我们就从代码转换到XML。

Android Studio 4.0.1 Java开发安卓应用 2:TextView

看着演示感觉已经够清楚了,没必要加注释与解释,看看名称就应该知道属性的意义了。

转换到了XML以后,我们依然可以在代码里动态修改我们的控件,但请注意不要让容器再次追加控件了,否则会出问题!

Android Studio 4.0.1 Java开发安卓应用 2:TextView

其他的函数这里就不多讲了,自己多试试也能明白个所以然了,以后我的Android教程就是这样,先动态的演示来一遍,再总的来个XML代码就算讲完了。