跟我学Android之三 常用视图

举报
tea_year 发表于 2021/12/30 00:12:05 2021/12/30
【摘要】 目标 掌握视图的概念。 明白Activity与Widget的区别。 掌握XML方式布局界面的特点和一些基本特性。 掌握几种常见基本视图的用法 学会使用代码方式进行界面布局的方法。 熟练掌握界面程序的事件驱动模型 视图(View)是可视化的界面元素,任何可视化组件都需要从android.view.View...

目标

掌握视图的概念。

明白Activity与Widget的区别。
掌握XML方式布局界面的特点和一些基本特性。
掌握几种常见基本视图的用法
学会使用代码方式进行界面布局的方法。

熟练掌握界面程序的事件驱动模型

视图(View)是可视化的界面元素,任何可视化组件都需要从android.view.View类继承,视图类通常分3种:布局类、视图容器类和基础视图类。如下图:


视图(View)是可视化的界面元素,视图对象可以单个组件或者很多组件的组合,可以通过XML来创建视图对象。代码如下:


  
  1. <LinearLayout
  2. android:orientation=“vertical”
  3. android:layout_width=“fill_parent”
  4. android:laout_height=“fill_parent”>
  5. <TextView android:id="@+id/text"
  6. android:layout_width="wrap_content"
  7. android:layout_height="wrap_content"
  8. android:text="Hello, I am a TextView"/>
  9. <Button … />
  10. </LinearLayout>



XML属性                  说明

android:padding         为组件的四边设置填充区域

android:scrollbars 定义该组件滚动时显示几个滚动条。该属性支持如下属性值。

none:                          不显示滚动条

horizontal:                 显示水平滚动条

vertical:                     显示垂直滚动条

android:tag               为该组件设置一个字符串类型的tag值。接下来可通过View的getTag()获取该字符串,或通过findViewWithTag()查询该组件

android:visibility       设置该组件是否可见,该属性取值有3个:

visible:                     可见

invisible:                 不可见

gone:                         隐藏

用于设定组件大小相关的属性

每一个视图都需要定义android:layout_width和android:layout_height,其值可以有如下几种情况,可以指定确切的大小:

wrap_content:表示有视图的内容决定大小

fill_parent(Level8之后改名为match_parent)表示与父容器一样大

设置组件填充父容器时存在两种方式

内填充的部分存在于组件空间内,相当于页边距的效果

padding——用于设置四边的内边距

paddingLeft、paddingRight、paddingTop、paddingBottom

外填充的部分存在与组件空间外,类似于边界的间隔

margin——用于设置四边的外部间距

marginLeft、marginRight、marginTop、marginBottom

视图与Widget(微件)的区别是:View是可视化的组件元素,Widget其实是一个迷你的Application,View可以存在于Widget中,View可以认为是界面的更加基本的元素。

使用XML布局视图

XML布局文件是Android系统中定义视图的常用方法,文件必须保存在res/layout目录中,XML布局文件的扩展名必须是xml,XML的文件名必须符合Java的变量命名规则,每一个布局文件的根节点可以是任意的组件,布局文件的根节点必须包含android命名空间,组件标签需要使用“@+id/stringvalue”指定ID,ID值的必须符合Java的变量命名规范。

xmlns:android=“http://schemas.android.com/apk/res/android”

<TextView android:id=“@+id/textview1” …>

  

XML布局文件示例



   
  1. <?xml version=“1.0” encoding=“utf-8”?>
  2. <LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”
  3. android:orientation=“vertical” android:layout_width=“fill_parent”
  4. android:layout_height=“fill_parent”>
  5. <TextView android:id=“@+id/textview1” android:layout_width=“fill_parent”
  6. android:layout_height=“wrap_content” android:text=“textview1” />
  7. <Button android:id=“@+id/button1” android:layout_width=“wrap_content”
  8. android:layout_height=“wrap_content” android:text=“ok” />
  9. </LinearLayout>


在Activity中使用XML布局

通过调用setContentView()方法在代码中使用XML布局


public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
}


通过调用findViewById()方法在代码中控制视图


TextView textView1 = (TextView)findViewById(R.id.textview1);
textView1.setText(“新的字符串内容”);


二:基本视图


文本控件——TextView,显示文本信息,显示基本文本。

     

   
  1. <TextView android:id=“@+id/textview1” android:layout_width=“fill_parent”
  2. android:layout_height=“wrap_content” android:text=“我是文本控件” />
           显示复杂文本
   

   
  1. <TextView android:id=“@+id/textview1” android:layout_width=“fill_parent”
  2. android:layout_height=“wrap_content” android:text=“我是文本控件”
  3. android:textSize=“20dp” android:textColor=“#FF0000”
  4. android:background=“#FFFFFF” android:padding=“30dp”
  5. android:layout_margin=“30dp”
  6. />
                 显示URL信息,通过指定android:autoLink属性来自动识别URL内容,none 不匹配任何链接(默认值),web 匹配web地址,email 匹配Email地址,phone 匹配电话号码。
示例

   
  1. <TextView android:id=“@+id/urlview” android:layout_width=“fill_parent”
  2. android:layout_height=“wrap_content” android:link=“email” />


   
  1. TextView urlView = (TextView)findViewById(R.id.urlview);
  2. urlView.setText(“电子邮件:testandroid@csg.com”);
编辑框----EditText
EditText继承自TextView,可以接受用户输入,并可以设置输入的数据类型。
属性inputtype,可以限定输入数据的类型,以下是常用的设置类型:
text:可输入所有字符
textUri: 可输入网址
textEmailAddress:可输入电子邮件
textPassword:可输入密码
number:可输入0^9的数字
date:可输入日期(0-9、”/”)
time:可输入时间(0-9、“: pam”)
phone:可输入电话号码
按钮控件——Button
         普通按钮控件的示例


   
  1. <Button android:id=“@+id/okbtn” android:layout_width=“wrap_content”
  2. android:layout_height=“wrap_content” android:text=“我是按钮” />



文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/51781092

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。