[Android Studio]掌握Android Studio的五种常见控件和五种常见布局 | 您所在的位置:网站首页 › 五种视图方式的特点是什么 › [Android Studio]掌握Android Studio的五种常见控件和五种常见布局 |
目录
一、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是相互包容、“你中有我,我中有你”的关系。
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的五种常见控件在Android的体系结构中,TextView和EditView之间是父类和子类的关系。即EditText继承于TextView,因此EditText几乎具备TextView的所有功能,两者之间最大的不同在于:EditText能够支持用户输入,而TextView不能。 2.1.1 TextView
注意: 颜色值组成(三原色)有三种表示方法 1.#RGB:3位16进制整数,如:#f00 2.#RRGGBB:#00ff00 3.#AARRGGBB:#ff0000ff
Android的体系结构中Button继承于TextView,而ImageButton继承于ImageView。虽然这两个控件继承于不同的控件,但是Button和ImageButton都是用于完成用户的单击按钮时的onClick事件。
点击事件(监听事件)实现方式(三种): ☞ 实现方式一: 先在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
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按钮的实现步骤: 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 ImageViewImageView是视图控件,它继承于View,其功能是在屏幕中显示图像,ImageView类可以从各种来源加载图像(如资源库或网络),并提供缩放、裁剪、着色(渲染)等功能。 ///在UI布局文件activity——main.xml中添加运行结果如下: 绝对布局是通过指定x、y坐标来控制每一个控件位置的。 四、参考资料《从零开始学Android编程》 中国大学慕课网:Android应用开发 中国大学慕课网:Android基础应用开发 |
CopyRight 2018-2019 实验室设备网 版权所有 |