首页 > 其他分享 >实验二:UI设计

实验二:UI设计

时间:2024-06-13 23:44:02浏览次数:28  
标签:控件 显示 事件处理 对象 布局 实验 设计 UI

实验二:UI设计

实验目的

本次实验的目的是让大家熟悉Android开发中的UI设计,包括了解和熟悉常用控件的使用、界面布局和事件处理等内容。

实验要求

  1. 熟悉和掌握界面控件设计
  2. 了解Android界面布局
  3. 掌握控件的事件处理

实验内容

Android中有许多常用控件:

文本框:TextView、EditText

按钮:Button、RadioButton、RadioGroup、CheckBox、ImageButton

列表:List、ExpandableListView、Spinner、AutoCompleteTextView、GridView、ImageView

进度条:ProgressBar、ProgressDialog、SeekBar、RatingBar

选择器:DatePicker、TimePicker

菜单:Menu、ContentMenu

对话框:Dialog、ProgressDialog

 

  1. RelativeLayout,TextView,EditText控件。

RelativeLayout表示的就是一行要设置

android:id="@+id/ll_name"
android:layout_width="match_parent"
android:layout_height="wrap_content">

TextView,EditText控件同样有layout_width,layout_height属性

实现的效果和代码如下

 

 

  1. LinearLayout,Button控件

LinearLayout就是线性布局

具体的代码和实现效果如下

 

 

每个控件都有一系列的属性,例如id、size、text、color等等

3.页面的布局

Android中有很多布局:

FrameLayout:最简单的一个布局对象。它里面只显示一个显示对象。Android屏幕元素中所有的显示对象都将会固定在屏幕的左上角,不能指定位置。但允许有多个显示对象,但后一个将会直接在前一个之上进行覆盖显示,把前一个部份或全部挡住(除非后一个是透明的)。

LinearLayout:以单一方向对其中的显示对象进行排列显示,如以垂直排列显示,则布局管理器中将只有一列;如以水平排列显示,则布局管理器中将只有一行。同时,它还可以对个别的显示对象设置显示比例。

TableLayout:以拥有任意行列的表格对显示对象进行布局,每个显示对象被分配到各自的单元格之中,但单元格的边框线不可见。

AbsoluteLayout:允许以坐标的方式,指定显示对象的具体位置,左上角的坐标为(0, 0),向下及向右,坐标值变大。这种布局管理器由于显示对象的位置定死了,所以在不同的设备上,有可能会出现最终的显示效果不一致。

RelativeLayout:允许通过指定显示对象相对于其它显示对象或父级对象的相对位置来布局。如一个按钮可以放于另一个按钮的右边,或者可以放在布局管理器的中央。

布局中可以放置控件,而每个布局又可以嵌套其他布局

RelativeLayout:

 

LinearLayout:

 

FrameLayout,LinearLayout,TableLayout,AbsoluteLayout,RelativeLayout示例。

 

4.事件的处理

事件处理:响应用户UI动作,提高应用程序交互性

1基于监听的事件处理机制

2基于回调的事件处理机制

3Handler消息处理

下面示例登录按钮的事件处理

xml文件和实现的效果如下

 

点击登录按钮之后就会跳转到LogiunActivity执行程序

执行Onclock监听函数,成功之后就会调用login函数,然后执行login操作。

 

 

 

 

 

标签:控件,显示,事件处理,对象,布局,实验,设计,UI
From: https://www.cnblogs.com/mine-my/p/18246969

相关文章

  • 实验一
    实验一:搭建Android平台和创建HelloWorld实验目的本次实验的目的是让大家熟悉搭建智能手机开发平台的过程,了解Andorid开发项目的基本文件目录结构,并实现HelloWorld小例程。实验要求完成Android开发平台的搭建及相关配置创建项目并熟悉文件目录结构实现例程HelloWorld实验......
  • 深入理解Java中的StringBuffer与StringBuilder:性能、用法与代码样例
    在Java编程中,当我们需要频繁地修改字符串时,使用String类可能会遇到性能问题,因为String是不可变的(immutable)。为了解决这个问题,Java提供了两个可变字符串类:StringBuffer和StringBuilder。这两个类都允许我们在不创建新对象的情况下修改字符串,但它们之间也有一些重要的区别。......
  • Radix UI:构建一致且可访问的 React 组件库
    RadixUI:构建一致且可访问的React组件库简介在当今的前端开发领域,React以其声明式编程范式和组件化架构,成为最受欢迎的JavaScript库之一。然而,创建一致的用户体验和可访问的界面往往需要大量的工作。这就是RadixUI组件库发挥作用的地方。什么是RadixUI?RadixU......
  • uni-ui:基于uni-app的全端兼容高性能UI框架
    一、引言在移动应用开发领域,跨平台框架因其能够降低开发成本、提高开发效率而备受开发者青睐。其中,uni-app作为一个使用Vue.js开发所有前端应用的框架,不仅支持编译到iOS、Android、H5、以及各种小程序等多个平台,还因其丰富的组件库和插件市场,为开发者提供了极大的便利。在uni-......
  • 从零开始的模拟集成电路设计(2):软件的使用与二输入与非门的设计仿真
     从零开始的模拟集成电路设计(1):软件的使用与简单数字集成电路的设计仿真-CSDN博客上接前文:我们在前面的课程中已经学会了如何设计一个简单的数字集成电路:反向器,现在我们继续学习下一个非常实用的数字集成电路:与非门。学习目的:1.掌握集成电路模拟仿真的基本流程2.掌握集成电......
  • 基于SpringBoot+Vue+uniapp的餐厅点餐系统的详细设计和实现(源码+lw+部署文档+讲解等)
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 基于SpringBoot+Vue+uniapp的球队训练信息管理系统的详细设计和实现(源码+lw+部署文档
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 基于SpringBoot+Vue+uniapp的高校图书馆个性化服务的详细设计和实现(源码+lw+部署文档
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 模拟集成电路设计系列博客——7.1.1 逐次比较型ADC基本介绍
    7.1.1逐次比较型ADC基本介绍实现数模转换器(ADC)的架构可以粗略的分成三种,如下表所示,分别为低到中速ADC,中速ADC和高速ADC:在开始之前,需要注意在讨论ADC设计时,我们一般会忽略AD传输特性中的0.5LSB偏移。采用这个简化是为了不将暂时的概念复杂化。许多转换器架构大量使用了开关电容......
  • 【Java中常用的设计模式总结】
    文章目录概要1、单例模式(SingletonPattern)2、工厂模式(FactoryPattern)3、建造者模式(BuilderPattern)4、原型模式(PrototypePattern)5、适配器模式(AdapterPattern)6、桥接模式(BridgePattern)7、组合模式(CompositePattern)8、装饰器模式(DecoratorPattern)9、外观模式(Facade......