[Android Studio]掌握Android Studio的五种常见控件和五种常见布局 您所在的位置:网站首页 五种视图方式的特点是什么 [Android Studio]掌握Android Studio的五种常见控件和五种常见布局

[Android Studio]掌握Android Studio的五种常见控件和五种常见布局

2023-08-08 19:42| 来源: 网络整理| 查看: 265

目录 一、View和ViewGroup二、Android的五种常见控件2.1 文本控件2.1.1 TextView2.1.2 EditText 2.2 按钮控件2.2.1 Button2.2.2 RadioButton2.2.3 CheckBox 2.3 图片控件2.3.1 ImageView 2.4 列表控件2.4.1 ListView2.4.2 Spinner2.4.3 ExpandableListView 2.5 时间日期控件2.5.1 AnalogClock(模拟时钟的显示方式)和DigitalClock2.5.2 DatePicker和TimePiker 三、五种常用的布局3.1 线性布局(LinearLayout)3.2 相对布局(RelativelLayout)3.3 帧布局(FrameLayout)3.4 表格布局(TableLayout)3.5 绝对布局(AbsoluteLayout) 四、参考资料

一、View和ViewGroup

Android体系中UI的设计采用视图层次的结构。

视图层次: 由View和ViewGroup组成。在创建UI时,开发人员不会真正去创建View或者ViewGroup,而是直接使用Android所提供的具有不同功能的控件,因此通常是看不到View或ViewGroup。

View是Android系统中最基本的组件,同时也是Android所有可视组件的父类,它完成了构建按钮、文本框、时钟等诸多控件的基本功能。此外View还有一个非常重要的子类ViewGroup。 View与ViewGroup的区别:ViewGroup能够容纳多个View作为ViewGroup的子组件,同时View也可以包含ViewGroup作为其子组件,所以View和ViewGroup是相互包容、“你中有我,我中有你”的关系。

wrap_content: 是layout_width和layout_height的属性值之一,表示和自身内容一样的长度。(由内容决定)

match_parent: 是layout_width和layout_height的属性值之一,表示和父组件一样的长度。

fill_parent: 以填充布局单元内尽可能多的空间。

margin属性: 外边距,指当前视图与其他视图间的距离,可以一次性指定上下左右四个外边距值,也可以一次性指定上下左右采用同一个边距值。

android:layout_margin="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_marginLeft="10dp" android:layout_marginRight="10dp"

padding属性: 内边距,指当前视图边距与其内容间的距离。赋值跟margin属性同类型。

android:layout_padding="10dp" android:layout_paddingTop="10dp" android:layout_paddingBottom="10dp" android:layout_paddingLeft="10dp" android:layout_paddingRight="10dp"

visible属性:

android:visiblity="visible" android:visiblity="invisible" android:visiblity="gone" 二、Android的五种常见控件

2.1 文本控件

在Android的体系结构中,TextView和EditView之间是父类和子类的关系。即EditText继承于TextView,因此EditText几乎具备TextView的所有功能,两者之间最大的不同在于:EditText能够支持用户输入,而TextView不能。

2.1.1 TextView

TextView是用于显示文字(字符串)的控件,可在代码中通过设置属性改变文字的大小、颜色、样式等功能。

注意: 颜色值组成(三原色)有三种表示方法

1.#RGB:3位16进制整数,如:#f00

2.#RRGGBB:#00ff00

3.#AARRGGBB:#ff0000ff

2.1.2 EditText

EditText是可以进行编辑操作(用于用户输入和编辑文字或字符的控件)的文本框,将用户信息传递给Android程序。还可以为EditText控件设置监听器,用来测试用户输入的内容是否合法。

2.2 按钮控件 2.2.1 Button

Android的体系结构中Button继承于TextView,而ImageButton继承于ImageView。虽然这两个控件继承于不同的控件,但是Button和ImageButton都是用于完成用户的单击按钮时的onClick事件。

Button是按钮,是用于响应用户的一系列点击事件,使程序更加流畅和完整。

点击事件(监听事件)实现方式(三种):

☞ 实现方式一:

先在layout文件中指定onClick属性:Android:onClick=“click”。然后在Activity中实现这个click方法

public void click (View v){ /// 处理按钮监听事件 }

☞ 实现方式二:在Activity中添加匿名内部类

Button button = findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener(){ @Override public void OnClick(View v){ /// 处理按钮监听事件 Log.i("匿名内部类方式","button is clicked"); } });

☞ 实现方式三:

public class MainActivity implements View.OnClickListener { //实现接口抽象方法 public void onClick(View v){ //处理按钮监听事件 } } //在Activity中注册回调接口 button.setOnClickListener(this); 2.2.2 RadioButton

RadioButton为单选按钮,它需要与RadioGroup配合使用,提供两个或多个互斥的选项集。(如男、女) RadioGroup是单选组合框,可容纳多个RadioButton,并把它们组合在一起,实现单选状态。

RadioButton按钮的实现步骤:

1.先在UI布局文件activity——main.xml中的LinearLayout标签中添加如下代码:

然后在MainActivity.java中添加onCreate函数中添加以下代码:

RadioGroup radiogroup = (RadioGroup)findViewById(R.id.radiogroup); radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener(){ public void onCheckedChanged(RadioGroup group,int checkedId){ switch(checkedId){ case R,id.maleradio:editText.setText("男"); break; } case R,id.femaleradio:editText.setText("女"); break; } } } ///另外Switch也可以用以下方法表示 if(checked==R.id.radiobutton1){ textView.setText("男"); } else{ case R,id.maleradio:editText.setText("女"); break; } } 2.2.3 CheckBox

CheckBox即多选按钮,允许用户在一组选项中进行单选和多选。用法与RadioButton类似。

CheckBox按钮的实现步骤:

1.先在UI布局文件activity——main.xml中的LinearLayout标签中添加代码(与radioBox的相似) 2.

注意:响应事件从何而来?(两个来源)

1.由系统提供的,具有特定函数名的响应函数(在OnCreate中进行定义和实现)

2.自定义响应函数名的方法来响应用户事件(放在Activity中作为一个成员函数来使用)

public void CheckboxClicked(View view){ boolean checked = ((Checked)view).isChecked(); case R.id.meat: if(checked){ editText.setText("肉类"); }else{ ... } break; ... } 2.3 图片控件 2.3.1 ImageView

ImageView是视图控件,它继承于View,其功能是在屏幕中显示图像,ImageView类可以从各种来源加载图像(如资源库或网络),并提供缩放、裁剪、着色(渲染)等功能。

///在UI布局文件activity——main.xml中添加

运行结果如下:

3.5 绝对布局(AbsoluteLayout)

绝对布局是通过指定x、y坐标来控制每一个控件位置的。

四、参考资料

《从零开始学Android编程》

中国大学慕课网:Android应用开发

中国大学慕课网:Android基础应用开发



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有