APP开发第二章 Button和TextView
本章将介绍Android app开发中最基础的textview和button两个控件
TextView
控件textview的通用属性有:宽高、颜色、边距、内容、点击事件等。主要用来在界面中显示一些文本。可以通过设置在界面的任何位置展示,字体大小颜色,文本框背景颜色等都可以调整。
新建几个文本textview
- 打开上次的建立的第一个项目 FirstProject,在左侧文件栏选择app->src->main->res->layout->activity_main.xml
如图:
创建TextView的两个方法
1:直接手写
在代码界面加入以下代码:
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Hello World two"
android:textColor="@color/firstcolor"
android:textSize="20sp">
</TextView>
2: 拖动textview控件加入
打开design界面,找到textview控件,拖动加入,design在下图左下角:
此时在Text代码界面会自动加入一部分TextView的代码,可以添加一些自己个性化的内容。参照上面的代码。
代码解释
layout_width layout_height
android:layout_width="wrap_content"
android:layout_height="wrap_content"
layout_width 和layout_height 分别表示TextView控件块的宽度和高度。 wrap_content 为自适应。会根据文本的大小,长短自动调节大小。优点在于字体不会撑爆控件块,缺点在于不易设计布局。
除了wrap_content外还有match_parent,即整行填充或整列填充。当宽高都设为match_parent时,将填充整个界面。
android:layout_width="match_parent"
android:layout_height="match_parent"
除此之外,还有自定义大小。如下:
android:layout_width="100dp"
android:layout_height="30dp"
dp为单位,对长宽高适用。
text textColor textSize
android:text="Hello World two"
android:textColor="@color/firstcolor"
android:textSize="20sp"
分别为设置TextView控件文本内容,文本颜色,文本大小。
文本大小单位为sp。
颜色建议在res->values目录下的color文件中添加颜色,再在layout布局文件中引用。
如图:
在layout布局文件中按以下格式引用。
android:textColor="@color/firstcolor"
text 中要输入的字符串也可以在values的strings中定义字符串,然后在layout布局文件中引用。
如图:
在layout布局文件中如下引用:
android:text="@string/text_fitst"
同理 dp sp 等数据也可在values的dimens中声明。 没有dimens文件可以右键values创建 Values resource file文件。
gravity
输入android:gravity 又center left right top bottom 等属性,分别是居中,左对齐,右对齐,靠顶,靠低
singleLine maxLines maxHeight
singleLine 即将所有文本只用一行展示,当在一个textview控件中要展示的文本很长时,控件可能无法展示全,此时设置成singleLine,自动省略多余的部分,一行展示。代码如下:
android:singleLine="true"
maxLines 可以设置用几行展示,代码如下:
android:maxLines="1"
可以任意设置成1、2、3或其他数字。
Button
Button其实是TextView的一种特殊情况,所能实现的功能TextView同样可以实现。Button主要用来设置点击事件,TextView也可以,并且方法相同。
关于Button的文字设置和TextView一样,不再赘述。这里之讲点击事件。先新建一个Button,方法和新建TextView一样。
设置点击事件
点击后界面跳转
新建完button后的代码界面如图:
第一步:
给Button添加id,即给Button取一个独一无二的名字,用于区别于其他控件。 text中的文本不是id。
代码如下:
<Button
android:id="@+id/button_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="点我跳转1"
/>
第二步:
打开MainActivity,在onCreate中加入以下代码:
findViewById(R.id.button_first).setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,FirstActivity.class);
startActivity(intent);
}
});
findViewById 即通过id找到这个View控件(Button是View控件的特殊情况)。然后设置了一个点击事件onClick。在onClick中声明一个Intent意图,用来传达点击Button实现界面跳转的意图。