Android-UI基本控件

合集下载

AndroidUI基本控件与事件处理

AndroidUI基本控件与事件处理

《Android基础应用》AndroidUI基本控件与事件处理⏹本章任务⏹使用Android开发本息计算器程序⏹使用Android开发华氏-摄氏温度转换器⏹本章目标⏹熟悉掌握本章基本控件的使用⏹熟练掌握Android常用事件1.Android基本控件Android应用开发的一项内容就是用户界面的开发,Android提供了大量功能丰富的UI组件,大部分放在android.widget包及其子包android.view包及其子包在Android当中View类是最基本的一个UI类,基本上所有的高级UI组件都是继承View类而实现的。

如Button(按钮),list(列表),EditText(编辑框),RadioButton(多选按钮),Checkbox(选择框)等都是View类在Android中,我们可以在Xml文件中使用UI组件也可以在java文件中创建UI组件官方建议采用xml方式,这样的话能够实现界面和代码分离1.1TextView和EditTextTextView是一种用于显示字符串的控件EditText则是用来输入和编辑字符串的控件,EditText是一个具有编辑功能的TextViewTextView和EditText基本属性●android:id设置ID,通过编码可以找到这个组件●android:layout_width设置在屏幕上的宽度●android:layout_height设置在屏幕上的高度fill_parent强制性地使构件扩展,以填充布局单元内尽可能多的空间wrap_content强制性地使视图扩展以显示全部内容●android:text设置显示的文本信息●android:textColor设置文本颜色●android:textSize设置文本尺寸示例的现实结果1.2Button和ImageButtonButton是一种按钮控件,用户能够在该控件上点击,并后引发相应的事件处理函数ImageButton用以实现能够显示图像功能的控件按钮示例示例的现实结果1.3CheckBox和RadioButtonCheckBox是一个同时可以选择多个选项的控件RadioButton则是仅可以选择一个选项的控件示例1.4 开发本息计算器界面需求说明银行提供整存整取定期储蓄业务,年利率为(一年 2.25%,两年 2.7%,三年3.24%,五年3.6%),要求输入本金数目和存款年限,计算到期取款时银行应支付本息开发思路开发页面main.xml按效果图进行布局示例练习——开发本息计算器界面2.Android事件处理事件处理的概念任何应用最终都是要面对用户的,经常处理的是用户的动作,也就是说要为用户的动作提供响应,这种为为用户动作提供响应的机制就是事件处理Android提供了强大的事件处理机制基于监听的事件处理●主要就是为Android界面组件绑定特定的事件监听器基于回调的时间处理●主要做法是重写Android组件特定的回调函数,Android大部分界面组件都提供了事件响应的回调函数,我们只要重写它们就行2.1基于监听的事件处理这是更具“面向对象”性质的事件处理方式,与java中的AWT,Swing开发中的处理相同在监听器模型中,主要涉及三类对象事件源Event Source:产生事件的来源,通常是各种组件,如按钮,窗口等事件Event:事件封装了界面组件上发生的特定事件的具体信息,如果监听器需要获取界面组件上所发生事件的相关信息,一般通过事件Event对象来传递 事件监听器Event Listener:负责监听事件源发生的事件,并对不同的事件做相应的处理基于监听器的事件处理机制是一种委派式Delegation的事件处理方式,事件源将整个事件委托给事件监听器,由监听器对事件进行响应处理。

android常用控件大全

android常用控件大全

android常用控件大全在Android中使用各种控件(View)DatePicker-日期选择控件TimePicker-时间选择控件ToggleButton-双状态按钮控件EditText-可编辑文本控件ProgressBar-进度条控件SeekBar-可拖动的进度条控件AutoCompleteTextView-支持自动完成功能的可编辑文本控件MultiAutoCompleteTextView-支持自动完成功能的可编辑文本控件,允许输入多值(多值之间会自动地用指定的分隔符分开)ZoomControls-放大/缩小按钮控件Include-整合控件VideoView-视频播放控件WebView-浏览器控件RatingBar-评分控件Tab-选项卡控件Spinner-下拉框控件Chronometer-计时器控件ScrollView-滚动条控件在Android中使用的LayoutFrameLayout:里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角LinearLayout:里面可以放多个控件,但是一行只能放一个控件TableLayout:这个要和TableRow配合使用,很像html里面的tableAbsoluteLayout:里面可以放多个控件,并且可以自己定义控件的x,y的位置RelativeLayout:里面可以放多个控件,不过控件的位置都是相对位置(Android界面布局好像还可以直接引用一些view,如ScrollView等)常用控件:1,EditText主要函数:setText/getText设置/获取文本内容,setHint设置缺省显示内容;2,RadioGroup,RadioButtonRadioButton的isChecked()判断是否被选中获取选中RadioButon的ID:设置RadioGroup.setOnCheckedChangeListener方法publiconCheckedChanged(RadioGroupgroup,intcheckedId)//checkedId 是选中RadioButton的ID3,CheckBoxisChecked()判断是否被选中setOnCheckedChangeListener方法监视选中状态改变情况4,Spinnera,显示数据1),硬编码加载通过setAdapter方法设置类型为ArrayAdapter(Contextcontext,inttextViewResId,String[]objects)textViewResourceId:显示内容的ViewID默认设置为yout.simple_spinner_itemobjects:显示的内容2),从资源文件中加载ArrayAdapter.createFromResource(Contextcontext,inttextArrayResId,in ttextViewResId)//textArrayResId是资源ID返回ArrayAdapter<CharSequence>b,设置下拉列表的风格(可选)adapter.setDropDownViewResource(yout.simple_spinner_d ropdown_item);c,监听选项选择变更事件setOnItemSelectedListener设置监听去Spinner.OnItemSelectedListener类须实现以下两个方法publicvoidonItemSelected(AdapterView<?>parent,Viewview,intposition ,longid)//view选中项实例,position选择项在adapter中的位置publicvoidonNothingSelected(AdapterView<?>arg0)d,设置选中项Spinner.setSelection(position)//索引从0开始d,获取选中项getSelectedItemPosition()getSelectedItem()//该值toString()则为选中内容的字符串getSelectedItemId()getSelectedView()5,AutoCompleteTextView1,setAdapter设置数据adapter2,设置输入多少个字符显示提示AutoCompleteTextView.setThreshold(intthreshold)6,MultiAutoCompleteTextView(允许输入多值,多值之间会自动地用指定的分隔符分开)1,setAdapter设置数据adapter2,setTokenizer设置提示Tokenizer缺省的为maTokenizer()以逗号分隔7,DatePicker,TimePickera,DatePicker1),设置初始显示日期init(intYear,intmonth,intday,newDatePicker.OnDateChangedListener(){ publicvoidonDateChanged(DatePickerview,intyear,intmonthOfYear,intd ayOfMonth){}})2),获取设置值getYeah()/getMonth()/getDayOfMonth()b,TimePicker1),设置setCurrentHour(IntegercurrentHour)/setCurrentMinuter(Integercurrent Hour)2,setIs24HourView(Boolean)设置是否为24小时制显示3,监听设置改变setOnTimeChangedListenerc,获取系统当期时间和日期Calendar.getInstance()返回CalendarCalendar.get(intfield)---field可以为Calendar.YEAR/Calendar.MONTH/Calendar.DAY_OF_MONTH/Calendar. HOUR_OF_DAY/Calendar.MINUTE8,ImageView/ImageButton主要方法setImageResource设置显示图片setAlpha设置Alphainvalidate强制更新setScaleType(ScaleTypest)设置图片显示方式,st是一枚举setAdjustViewBounds设置是否调整控件适应图片大小setBackgroundResource设置背景9,ImageSwitcher(显示一系列的图片,但当前只显示一张图片)显示数据setFactory(ViewSwitcher.ViewFactoryfactory)设置要显示的数据,ViewFactory接口须实现方法publicViewmakeView(){}负责提供当前显示的视图(ImageView),且View必须为新实例方法setImageResource设置当前显示的图片getCurrentView()返回当前显示的视图setInAnimation(Animationani)设置视图装载入时的动画效果,AnimationUtils.loadAnimation(Contextcontext,intid)获取动画效果android.R.anim.XXsetOutAnimation(Animationani)设置视图装载入时的动画效果10,Gallery(显示一系列的图片,提供拖动等特效)显示数据setAdapter(SpinnerAdapteradapter)设置数据适配器.数据适配器可以继承自BaseAdapter,该类publicViewgetView(intposition,ViewconvertView,ViewGroupparent)返回当前选择的视图(ImageView)选项选中监听setOnItemSelectedListener11,GridView(表格显示一系列图片)显示数据setAdapter(ListAdapteradapter)设置数据适配器.数据适配器可以继承自BaseAdapter,该类publicViewgetView(intposition,ViewconvertView,ViewGroupparent)返回当前选择的视图(ImageView)选项选中监听setOnItemSelectedListenergetSelectedView()返回当前选中的视图12,ScrollView13,ProgressBarsetIndeterminate设置进度条是否自动运转setProgressStyle设置显示风格.ProgressDialog.STYLE_HORIZONTAL/ProgressDialog.STYLE_SPINNE RsetProgress设置进度setMax设置最大值getProgress()获取当前进度14,SeekBar方法setMax设置最大值getProgress()获取当前值setProgress设置值setIndeterminate监听器setOnSeekBarChangeListener其下有三个方法publicvoidonProgressChanged(SeekBararg0,intarg1,booleanarg2)//数值变更,arg1新值,是否TouchpublicvoidonStartTrackingTouch(SeekBarseekBar)//开始拖动publicvoidonStopTrackingTouch(SeekBarseekBar)//结束拖动15,ListViewa,显示数据setAdapter(ListAdapteradapter)adapter可为newSimpleCursorAdapter/SimpleAdapter(Contextcontext,intlayout,Curs orc,String[]from,int[]to)layout用来显示数据的模板.显示一列可用yout.simple_list_item_1两列可用yout.simple_list_item_2多列则需要自己实现xml视图布局文件c数据(可用ArrayList构造数据)from':to用来显示对应列的空件idb,动态增删数据adapter.notifyDataSetChanged()d,设置背景色setBackGroudRource。

Android基本控件之RadioGroup

Android基本控件之RadioGroup

Android基本控件之RadioGroup我们在⼿机上经常看到⼀堆选项,但是我们只能选择⼀个,那么在Android中,这个控件就叫做RadioButton,也就是单选按钮的意思,他们之所以能够达到只能选择⼀个的效果,是因为有⼀个RadioGroup这样⼀个组件。

这次,我们就来详细的解说⼀下RadioButton和RadioGroup这两个控件的关系和区别,以及如何去使它们默契的搭配在⼀起~要实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使⽤,其中RdioGroup是单选组合框,可以容纳多个RadioButton 的⼀个容器。

在没有RadioGroup的情况下,RadioButton可以全部被选中;当多个RadioButton被RadioGroup包含的情况下,RadioButton 只可以选择⼀个,从⽽达到了单选的⽬的。

并⽤setOnCheckChangeLinstener()来对单选按钮进⾏监听。

RadioGroup的相关属性: 1.RadioGroup.getCheckedRadioButtonId(); 该⽅法可以获取选中的按钮 2.RadioGroup.clearCheck(); 该⽅法可以清除选中状态 3.setOnCheckedChangeLintener(RadioGroup.OnCheckedChangeListener listener); 当⼀个单选按钮组中的单选按钮选中状态发⽣改变的时候调⽤的回调⽅法 4.RadioGroup.check(int id); 该⽅法可以通过传⼊ID来设置该选项为选中状态 5.addView(View child,int index, youtParams params); 使⽤指定布局参数添加⼀个字视图(其中child是要添加的⼦视图,index是将要添加⼦视图的位置,params 所要添加的⼦视图的布局参数) 6.RadioButton.getText(); 获取单选框的值 此外,RadioButton的checked属性设置为true,代码⾥调⽤RadioButton的check(id)⽅法,不会触发onCheckedChanged事件然后,我们来看⼀下RadioButton和RadioGroup的关系: 1.RadioButton表⽰单个原型单选框,⽽RadioGroup是可以容纳多个RadioButton的容器 2.每个RadioGroup中的RadioButton同时只能有⼀个被选中 3.不同的RadioGroup中的RadioButton互不相⼲,即如果组A中有⼀个选中了,那么组B中依然可以有⼀个被选中。

preferencescreen详解

preferencescreen详解

我们来深入了解一下preferencescreen这个主题。

preferencescreen是Android开发中常用的UI控件,用于显示应用程序的设置选项。

它是PreferenceActivity的一部分,允许用户在应用程序中修改各种设置,例如通知、声音、语言等。

preferencescreen界面由多个Preference组成,每个Preference代表一个具体的设置选项,用户可以通过preferencescreen来方便地管理这些选项。

在我们深入研究preferencescreen之前,我们需要先了解一下它的基本结构和用法。

preferencescreen通常由两种类型的设置选项组成:单选按钮和复选框。

单选按钮用于用户在一组互斥的选项中选择一个,而复选框则允许用户选择多个选项。

这两种设置选项在preferencescreen中都可以很方便地使用,使得用户可以根据自己的喜好和需求来调整应用程序的设置。

除了基本的设置选项外,preferencescreen还可以包含各种高级设置选项,如颜色选择器、滑块、文本输入框等。

这些高级设置选项可以让用户更加细致地调整应用程序的外观和功能,使得preferencescreen成为了一个非常强大和灵活的工具。

在实际的Android应用程序开发中,preferencescreen的使用非常普遍。

开发人员可以通过preferencescreen来让用户自定义应用程序的各种设置,从而提高用户体验和便利性。

而且,preferencescreen的设计和样式也可以根据应用程序的整体风格进行定制,使得应用程序的设置界面更加美观和易用。

从个人观点来看,preferencescreen作为Android开发中非常重要的一个组件,其灵活性和强大性给了开发者很大的便利性。

通过合理地设计和使用preferencescreen,可以让用户更加方便地调整应用程序的各种设置,提高用户体验和用户满意度。

安卓UI控件详细笔记

安卓UI控件详细笔记
在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为 marquee_forever时表示无限次。
android:focusable="true" android:focusableInTouchMode="true"
android:singleLine="true"
16、android:maxLength:限制显示的文本长度,超出部分不显示。 17、android:lines:设置文本的行数,设置两行就显示两行,即使第二行没有数据也显示。 18、android:singleLine 设置文本是否是单行显示(默认false, 超出部分会换行)。如果设置为true,则超出部 分不显示, 只显示省略号...
2. android:inputType="textPersonName"
3. android:inputType="textPassword"
文本密码
4. android:inputType="numberPassword" 只能输入数字的密码
5. android:inputType="textEmailAddress" 电邮地址
Android提供了非常良好的UI事件处理机制。View是绘制UI的类,每个View对象都可以向Android注册事件监听器。每个事件监听器都包含一个回调 方法(callback method),这个回调方法主要的工作就是回应或处理用户的操作。
(二)、Android UI事件处理中基于监听和回调的事件处理机制(event listener):
7、 android:ems
设置TextView的宽度为N个字符的宽度

AndroidUI之菜单对话框

AndroidUI之菜单对话框

《Android基础应用》AndroidUI之菜单对话框⏹本章任务⏹使用Android开发菜单应用⏹使用Android开发XML菜单⏹使用Android开发对话框应用⏹本章目标⏹掌握Android中的菜单⏹掌握Android中的对话框1.Android基本控件菜单菜单是应用程序中非常重要的组成部分,能够在不占用界面空间的前提下,为应用程序提供了统一的功能和设置界面,并为程序开发人员提供了易于使用的编程接口Android系统支持三种菜单选项菜单(Option Menu)子菜单(Submenu)快捷菜单(Context Menu)1.1选项菜单选项菜单是一种经常被使用的Android系统菜单打开方式:通过“菜单键”(MENU key)打开选项菜单分类●图标菜单(Icon Menu)图标菜单能够同时显示文字和图标的菜单,最多支持6个子项图标菜单不支持单选框和复选框●扩展菜单(Expanded Menu)扩展菜单是在图标菜单子项多余6个时才出现,通过点击图标菜单最后的子项“More”才能打开,扩展菜单是垂直的列表型菜单⏹不能够显示图标⏹支持单选框和复选框创建一个选项菜单的步骤●覆盖Activity的onCreateOptionsMenu(Menu menu)函数●调用menu的add()方法添加菜单项(MenuItem),可以调用MenuItem的setIcon()方法来为菜单设置图标●当菜单项()被选择时,我们可以通过覆盖Activity的onOptionsItemSeleted()方法来响应事件示例一示例的实现结果onCreateOptionsMenu()函数●函数返回值:布尔值,表示是否显示该函数中设置的菜单●参数:Menu对象onCreateOptionsMenu函数仅在第一次使用菜单时被调用一次Menu对象的add()方法添加菜单子项,这个函数有四个重载函数public MenuItem add(CharSequence title)●参数:指定菜单上的显示文字public MenuItem add(int titleRes)●参数:菜单标题的引用通过string.xml中添加public MenuItem add(int groupId, int itemId, int order, CharSequence title); public MenuItem add(int groupId, int itemId, int order, int titleRes);●groudId:是指组ID,用以批量地对菜单子项进行处理和排序●itemId:是子项ID,是每一个菜单子项的唯一标识●order:指定菜单子项在选项菜单中的排列顺序示例二设置菜单的图标public MenuItem setIcon(int iconRes)示例的实现结果菜单多余六个菜单时显示扩展菜单不能够显示图标支持单选框和复选框public void setGroupCheckable(int group, boolean checkable, boolean exclusive);在setGroupCheckable()方法中,第一个参数为要设置的groupId,第二个为菜单项是否可选,最后一个参数是是否为单选切换单复选的选择效果需要在onOptionsItemSelected中设置onPrepareOptionsMenu()函数,能够动态的添加、删除菜单子项,或修改菜单的标题、图标和可见性等内容,函数的返回值的含义与onCreateOptionsMenu()函数相同当用户第一次按Menu键时,先执行onCreateOptionsMenu( ),然后执行onPrepareOptionsMenu();当用户第二次,第三次,第N次按Menu建时,执行onPrepareOptionsMenu(),因此我们可以在onPrepareOptionsMenu()中处理每次的变化1.2子菜单子菜单就是将相同功能的分组进行多级显示的一种菜单子菜单是能够显示更加详细信息的菜单子项菜单子项使用了浮动窗体的显示形式,能够更好适应小屏幕的显示方式子菜单不支持嵌套创建一个子菜单的步骤● 覆盖Activity 的onCreateOptionsMenu()方法,调用Menu 的addSubMenu()方法来添加子菜单● 调用SubMenu 的add()方法,添加子菜单● 覆盖onContextItemSelected()方法,响应子菜单的单击事件 示例SubMenu 是Menu 的子类 比较常用的方法有:setHeaderIcon()、setHeaderTitle()设置关联Intent打开另一个Activitypublic MenuItem setIntent(Intent intent)示例的实现结果如图练习——菜单应用需求说明:按图创建菜单每个菜单都有子菜单性别子菜单使用单选颜色子菜单使用复选启动程序子菜单需要使用关联Intent1.3快捷菜单快捷菜单也可称为上下文菜单,同样采用了动态窗体的显示方式,与子菜单的实现方式相同,但两种菜单的启动方式却截然不同快捷菜单类似于普通桌面程序中的“右键菜单”,当用户点击界面元素超过2秒后,将启动注册到该界面元素的快捷菜单创建一个快捷菜单的步骤覆盖Activity的onCreateContextMenu()方法,调用Menu的add方法添加菜单项覆盖onContexItemSelected()方法,响应菜单单击事件调用registerForContexMenu()方法为视力注册上下文菜单示例示例的实现结果如图onCreateContextMenu函数public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo)●menu:需要显示的快捷菜单●v:V是用户选择的界面元素●menuInfo:menuInfo是所选择界面元素的额外信息onCreateOptionsMenu函数仅在第一次使用菜单时被调用一次,而onCreateContextMenu函数在每次启动都将会被调用一次1.4XML菜单Android不仅支持代码创建菜单,同时还支持xml配置菜单创建一个XML菜单的步骤●在/res/目录下新建menu文件夹,用于存储Menu XML资源文件●在/res/menu/下新建menu1.xml菜单界面描述文件●重写Activity中onCreateOptionsMenu(Menu menu)方法示例创建xml文件使用Android xml向导创建选项菜单创建子菜单在<item/>标签内嵌套<menu/>创建单选子菜单、多选子菜单● 使用group 标签,设置属性android:checkableBehavior ● single 设置为单选,all 为多选,none 为普通选项练习——菜单应用需求说明:按图创建xml菜单每个菜单都有子菜单性别子菜单使用单选颜色子菜单使用复选启动程序子菜单启动关联Intent2.对话框一个对话框一般是一个出现在当前Activity之上的一个小窗口. 处于下面的Activity失去焦点, 对话框接受所有的用户交互. 对话框一般用于提示信息和与当前应用程序直接相关的小功能.在Android中Dialog是创建对话框的基础,我们不能直接实例化一个Dialog而是使用它的子类Android API 支持下列类型的对话框对象●警告对话框AlertDialog●进度对话框ProgressDialog●日期选择对话框DatePickerDialog●时间选择对话框TimePickerDialog2.1AlertDialog警告对话框AlertDialog主要用来提示一些文本信息●可以有0到3个按钮, 一个单选框或复选框的列表的对话框. 警告对话框可以是自定义的使用AlertDialog来完成下面几种任务●显示提示信息,让用户选择是或否●从Dialog中提供的列表里选择一个Item项●从Dialog中提供的列表里选择多个Item项●…创建AlertDialog的步骤⏹创建一个AlertDialog.Builder对象,该对象是AlertDialog的创建器⏹调用AlertDialog.Builder的方法,设置要创建的Dialog的参数,如图标,几个按钮,显示什么内容等⏹对按钮设置回调函数(因为android中的dialog都是异步的,所以要回调函数)⏹调用AlertDialog.Builder的create()方法,让Builder生成dialog对象⏹使用show()方法将dialog显示出来弹出一个消息框如果不进行设置。

Android基本控件进阶与调试

Android基本控件进阶与调试

《Android基础应用》Android基本控件进阶与调试⏹本章任务⏹使用Android实现注册程序⏹使用Android实现跑马灯效果⏹使用Android实现图片显示程序⏹本章目标⏹掌握Java代码中处理组件⏹掌握ImageView组件的基本使用⏹掌握本章基本控件的特色应用⏹掌握Toast提示⏹熟练掌握Android调试1.Java代码中处理组件在Xml文件中定义视图,然后在Activity中使用setContentView()设置视图是Android中常用的方式,动态添加组件或者动态加载布局也是常见的情况1.1使用getLayoutInflater().inflate()方法加载自定义布局文件public View inflate(int resource, ViewGroup root)resource是xml布局文件的资源IDroot是获得布局文件中容器对象1.2动态添加组件步骤●获取或创建容器对象●创建组件对象●将组件添加到容器2.Android的图像显示控件ImageView是一个用于显示图片的控件,该控件有个重要的属性是ScaleType,该属性用以表示显示图片的方式共有8种取值ScaleType.CENTER::图片大小为原始大小,如果图片大小大于ImageView控件,则截取图片中间部分,若小于,则直接将图片居中显示。

ScaleType.CENTER_CROP:将图片等比例缩放,让图像的短边与ImageView的边长度相同,即不能留有空白,缩放后截取中间部分进行显示。

ScaleType.CENTER_INSIDE:将图片大小大于ImageView的图片进行等比例缩小,直到整幅图能够居中显示在ImageView中,小于ImageView的图片不变,直接居中显示。

ScaleType.FIT_CENTER:ImageView的默认状态,大图等比例缩小,使整幅图能够居中显示在ImageView中,小图等比例放大,同样要整体居中显示在ImageView中。

Android Studio项目开发教程 第3章 常用UI组件

Android Studio项目开发教程 第3章 常用UI组件
字段的字符是否显示为密码的点,而不是它们本身。可能的值是“true”或“false”。
如果设置,则指定TextView具有一个电话号码的输入法。可能的值是“true”或“false”。
要显示的文字。
目前在所有大写的文本。可能的值是“true”或“false”。
文本颜色。可以是一个颜色值,在形式"#rgb", "#argb", "#rrggbb", 和 "#aarrggbb".
} });
3.1常用控件
3.1.2 按钮类组件
2、在MainActivity 类中实现OnClickListener接口,重写该接口中的onClick方法,多个控件对应同一个监听事件, 在回调方法中用case语句进行分别处理。该方法适用于Button较多的时候。
@Overridepublic class MainActivity extends AppCompatActivity implement View.OnClickListener{
方式描述center在视图中心显示图片并且丌缩放图片centercrop按比例缩放图片使得图片长宽的大亍等亍视图的相应维度centerinside按比例缩放图片使得图片长宽的小亍等亍视图的相应维度fitcenter按比例缩放图片到视图的最小边居中显示fitend按比例缩放图片到视图的最小边显示在视图的下部分位置fitstart把图片按比例扩大缩小到视图的最小边显示在视图的上部分位置fitxy把图片丌按比例缩放到视图的大小显示matrix用矩阵来绘制312按钮类组件3
3.1常用控件
描述
这是唯一地标识控件的ID。 如果设置,指定该TextView中有一个文本输入法会自动利用什么类型的用户。 • 不要自动大写任何东西 - 0 • 大写每句的第一个字 - 1 • 大写每个单词的第一个字母 - 2 • 大写每一个字符 - 3 使光标可见(默认值)或不可见。默认为false。 如果设置为true,指定TextView的一个输入法。 字体系列(由字符串命名)的文本。 指定如何排列由视图的x和/或y轴的文本时,该文本比视图小。 提示文本显示文本为空。 数据的类型被放置在一个文本字段。手机,日期,时间,号码,密码等。 使得TextView至多到像素高。

第三章 Android 常用UI布局及控件一[2页]

第三章 Android 常用UI布局及控件一[2页]

3.7 自我评测一、单选题1.在相对布局中,用于设置当前控件位于某控件左侧的属性是()。

A.android:layout_alignLeftB.android:layout_toLeftOfC.android:layout_alignParentLeftD.android:layout_centerInParent参考答案:B2.下列选项中,属于相对布局的标签()。

A.TableLayoutB.ConstraintLayoutC.FrameLayoutD.RelativeLayout参考答案:D3.下列选项中,属于CheckBox控件设置选择监听事件的方法的是()。

A.setOnClickListenerB.setOnCheckedListenerC.setOnCheckedChangeListenerD.setOnMenuItemSelectedListener参考答案:C4.下列选项中,属于设置TextView中文本内容的属性的是()。

A.android:textValueB.android:textC.android:textColorD.android:textSize参考答案:B5.下面关于RadioButton控件的描述,正确的是()。

A.RadioButton默认为选中状态B.RadioButton表示单选按钮C.RadioButton有“选中”和“未选中”的状态D.以上说法都不对参考答案:B二、判断题1.RelativeLayout通过以父容器或其它子控件为参照物,指定布局中子控件的位置。

参考答案:对2.Button控件可以显示文本信息,也可以显示图片资源。

参考答案:对3.TextView控件用于显示文本信息。

参考答案:对4.TextView控件中只能显示文本信息,不能显示图片。

参考答案:错答案说明:TextView控件中即能显示文本信息,也能显示图片。

5.android:textSize属性可以设置TextView中的文本显示的大小。

第一行代码 Android 第3版 pdf

第一行代码 Android 第3版 pdf

第一行代码 Android 第3版 pdf描述:本章将介绍Android开发的基本概念和环境设置。

包括安装Android。

创建第一个Android应用程序以及基本的布局和组件知识。

描述:本章将深入探讨Android应用程序的Activity组件。

包括Activity的生命周期、启动和关闭Activity、传递数据以及处理用户输入等内容。

#《第一行代码 Android 第3版 pdf》描述:本章将深入探讨Android应用程序的Activity组件。

包括Activity的生命周期、启动和关闭Activity、传递数据以及处理用户输入等内容。

#《第一行代码 Android 第3版 pdf》第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

同时也会讲解如何处理这些控件的交互和事件。

第一行代码 Android 第3版 pdf第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

同时也会讲解如何处理这些控件的交互和事件。

第一行代码 Android 第3版 pdf第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

同时也会讲解如何处理这些控件的交互和事件。

第一行代码 Android 第3版 pdf第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

同时也会讲解如何处理这些控件的交互和事件。

第一行代码 Android 第3版 pdf第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

同时也会讲解如何处理这些控件的交互和事件。

第一行代码Android 第3版 pdf第三章:基本UI控件本章将介绍Android应用程序中常用的基本UI控件,如按钮、文本框、列表视图等。

第5章 Android——UI常用基本控件

第5章 Android——UI常用基本控件

android:orientation
在线性布局中使用gravity属性来设置控件的对齐方式。gravity 可取的值及说明方法如表5-2所示。
5.1.1线性布局LinearLayout 表5-2
属性值 top bottom left right 说明 不改变控件大小,对齐到容器顶部 不改变控件大小,对齐到容器底部 不改变控件大小,对齐到容器左侧 不改变控件大小,对齐到容器右侧
android:text android:textColor android:textSize android:typeface
对应方法 setAutoLint(int) setGravity(int) setHeight(int) setMinHeight(int) setMaxHeight(int) setWidth(int) setMinWidth(int) setMaxWidth(int) setHint(int)
5.2 UI界面控件
5.2.1TextView与EditText 文本控件主要包括TextView控件和EditText控件。 其中TextView控件继承自View类,其主要功能是向用户显 示文本内容,同时可选择性地让用户编辑文本。从功能上来说, TextView就是一个完整的文本编辑器,只不过其本身被设置为 不允许编辑,其子类EditText被设置为允许用户对内容进行编 辑。 TextView提供了大量XML属性,这些XML属性大部分既可 适用于TextView,又可适用于EditText,但有少量XML只能适 用于其一,表5-7显示了TextView支持的XML属性及相关方法 的说明。
移动平台UI交互设计与开发
第5章 Android——UI常用基本控件
知识技能目标:

android常用控件及布局

android常用控件及布局

一、概述Android的控件体系分为三个类别:1、基本控件2、布局3、容器这三类控件主要分布在两个包中:1、android.view 提供抽象接口2、android.widget 提供系统内置的大部分控件整个系统得控件都继承自android.view.View ,而布局及容器类继承自android.view.ViewGroup。

基本控件主要包括ImageView、ProgressBar、SurfaceView、TextView、EditText等。

布局虽然布局跟容器均继承自android.view.ViewGroup,但并不像SWT那样提供了面板+布局的结构,而是每种Layout就是一中特殊的面板,包括AbsoluteLayout、FrameLayout、LinearLayout、TableLayout、RelativeLayout等。

容器这里的容器是指采用了特定的布局并且提供了行为的控件,包含ListView、GridView、Gallery、Spinner等。

二、android常用控件android常用控件之TextView、EditView、Button、Menu示例:一个计算应用程序,输入2个数字,点击按钮进行计算两个数的积并且返回结果。

当点击模拟器右侧的Menu按钮,在输入界面中显示一个有关于和退出的菜单。

项目运行效果图:开发步骤:1、新建一个Android项目2、在布局文件中依次添加EditText、TextView、EditText、Button(一定要按照界面上控件显示的顺序在布局文件中添加)3、再新建一个布局文件用来显示计算的结果;在这个布局文件中添加一个LinearLayout和一个TextView(默认的布局文件中默认就有一个LinearLayout,所以不需要手动添加,新建的布局文件默认为空,所以需要手动添加)4、编写第一个Activitya) 让Activity继承android的Activityb) 重写Activity的onCreate()方法c) 设置这个Activity的布局文件d) 根据控件id获得控件对象e) 设置控件的值,这个值引用的是string.xml中的值,所以还需要在string.xml文件中设置(最好是使用string.xml中的值,以便实现国际化);这个在布局文件中也能设置;5、新建一个Activity,ResultActivitya) 让Activity继承android的Activityb) 重写Activity的onCreate()方法c) 设置这个Activity的布局文件d) 根据控件id获得控件对象6、在第一个Activity中编写Button的监听器a) 取得两个EditText控件的值b) 创建Intent对象c) 将这两个值存放到Intent对象当中d) 使用Intent对象启用ResultActivitye) 将监听器与Button绑定7、在第二个Activity(ResultActivity)中获得Intent对象a) 获得Intent对象中保存的值并强制转换成int类型b) 计算两个值的积c) 设置控件值8、在第一个Activity中,重写onCreateOptionsMenu()方法,这个方法是用于添加菜单中的菜单项,我们添加两个菜单项9、再在第一个Activity中重写onOptionsItemSelected()方法,这个方法是当点击菜单中菜单项时调用。

Android--四大基本组件

Android--四大基本组件

Android--四⼤基本组件Android四⼤基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver⼴播接收器。

⼀、四⼤基本组件1.Activity应⽤程序中,⼀个Activity通常就是⼀个单独的屏幕,它上⾯可以显⽰⼀些控件也可以监听并处理⽤户的事件做出响应。

Activity之间通过Intent进⾏通信。

在Intent 的描述结构中,有两个最重要的部分:动作和动作对应的数据。

典型的动作类型有:M AIN(activity的门户)、VIEW、PICK、EDIT 等。

⽽动作对应的数据则以URI 的形式进⾏表⽰。

例如:要查看⼀个⼈的联系⽅式,你需要创建⼀个动作类型为VIEW 的intent,以及⼀个表⽰这个⼈的URI。

与之有关系的⼀个类叫IntentFilter。

相对于intent 是⼀个有效的做某事的请求,⼀个intentfilter则⽤于描述⼀个activity(或者IntentReceiver)能够操作哪些intent。

⼀个activity 如果要显⽰⼀个⼈的联系⽅式时,需要声明⼀个IntentFilter,这个IntentFilter 要知道怎么去处理VIEW 动作和表⽰⼀个⼈的URI。

IntentFilter 需要在AndroidManifest.xml 中定义。

通过解析各种intent,从⼀个屏幕导航到另⼀个屏幕是很简单的。

当向前导航时,activity 将会调⽤startActivity(Intent myIntent)⽅法。

然后,系统会在所有安装的应⽤程序中定义的IntentFilter 中查找,找到最匹配myIntent 的Intent 对应的activity。

新的activity 接收到myIntent 的通知后,开始运⾏。

当startActivity ⽅法被调⽤将触发解析myIntent 的动作,这个机制提供了两个关键好处:A、Activities 能够重复利⽤从其它组件中以Intent 的形式产⽣的⼀个请求;B、Activities 可以在任何时候被⼀个具有相同IntentFilter 的新的Activity 取代。

Android初级-----(基本组件)

Android初级-----(基本组件)

第5单元用户界面View (二)(4课时)5.1 常用组件介绍5.1.1 Button按钮5.1.2 TextView文本5.1.3 EditText可编辑文本框5.1.4 RadioGroup RadioButton单选按钮5.1.5 CheckBox复选框5.1.6 ImageView图片框ImageButton 图片按钮5.1.7 DatePicker 日期5.1.8 TimePicker 时间Button按钮点击事件处理:监听事件多种方式使用监听1,xml布局文件中有onClick2,使用匿名内部类3,定义内部监听类4,定义监听类(也可以是本类)EditText可编辑文本框重要属性:1.android:hint=”提示内容”//设置显示在空间上得提示信息2.android:numeric=”123”//设置只能输入整数,如果是小数则是:decimal3.android:singleLine=”true”//设置单行输入,一旦设置为true,则文字不会自动换行4.android:password=”true”//设置只能输入密码5.android:textColor=”#FF8C00”//设置字体颜色6.android:textStyle=”bold”//字体,bold,italic,bolditalic7.android:textSize=”20dip”//大小8.android:capitalize=”characters” //以大写字母写9.android:textAlign=”center”//EditText没有这个属性,但是TextView有,居中10.android:textColorHighlight=”#CCCCCC” //被选中文字的颜色,默认为蓝色11.android:textColorHint=”#FFFF00” // 设置提示信息文字的颜色,默认为灰色12.android:textScaleX=”1.5”//控制字与字之间的间距13.android:typeface=”monospace” //字型normal,sans,serif,monospace14.(等宽字体)15.android:background=”@null” //背景,这里没有,指透明16.android:layout_weight=”1” //权重,控制控件之间的地位,在控制控件显示的大小时蛮有用的。

AndroidUI界面开发详解

AndroidUI界面开发详解

Spinner下拉列表控件
Spinner控件用于显示一个下拉列表,该控件在装载数据的时候需要创 建一个Adapter适配器对象。并在创建Adapter对象过程中指定要装 载的数据是数组或者是List对象的数据 实战案例之一 Spinner下拉列表控件
TabHost标签控件
如果在屏幕上要放置很多的控件,可能一个屏放不下,除了使用滚动 视图的方式外,还可以使用标签控件对屏幕进行分页显示,当单击标 签控件的不同标签时,会显示当前标签的内容,在android系统中一 个标签可以是一个View或者是Activity TabHost是标签控件的核心类,也是一个标签的集合,每一个标签是 TabHost.TabSpec对象。通过TabHost类的addTab的方法添加多个 TabHost.TabSpec对象。 实战案例之一 TabHost标签控件显示分页 实战案例之 二 TabHost标签控件显示底端菜单
使用PopupWindow
PopupWindow 可以创建类似对话框风格的窗口,使用 PopupWindow创建对话框风格的窗口只要实现两个步骤即可: 1、调用PopupWindow的构造器创建PopupWindow对象 2、调用PopupWindow的showAsDropDown(View view)方法将 PopupWindow作为view的组件的下拉组件显示出来,或者调用 PopupWindow的showAtLocation方法将PopupWindow在指定的 位置显示出来。 实战案例一: 使用PopupWindow实现对话框的提示
TimerPicker时间与日期控件
TimerPicker输入时间控件用来输入小时和分钟。 TimerPicker默认的 情况下是12小时进制,也可以设置24小时显示。 实战案例一: TimerPicker时间控件的使用

android常用控件属性方法事件说明

android常用控件属性方法事件说明

1,TextView用于在界面上显示文字,内容不可编辑,继承View2,EditText是可供用户编辑内容的文本框。

继承TextView,可重用TextView定义的属性3,按钮控件Button,继承TextView,ImageButton继承ImageViewButton可根据用户的操作动态切换图片,需定义drawable资源<selector><?xml version="1.0" encoding="utf-8"?><selector xmlns:android="/apk/res/android"><item android:drawable="@drawable/app_icon" android:state_pressed="true"/> <item android:drawable="@drawable/app_notes"android:state_pressed="false"/> </selector>4,单选按钮RadioButton继承至Button按钮。

可通过android:checked属性指定是否选中。

一组RadioButton只能选择其一,因此它需要与RadioGroup一起使用。

5,复选框按钮CheckBox。

继承至Button按钮。

可通过android:checked属性指定是否选中7,AnalogClock继承View,重写了onDraw()方法。

显示模拟时钟,不会显示当前的秒数。

DigitalClock继承TextView.显示数字时钟,会显示当前秒数。

8,图片显示控件ImageView,继承View,任何Drawable对象都可以用它来显示,注意src 属性和background属性的区别9,自动完成AutoCompleteTextView继承至EditText,当用户输入信息后,会显示下拉菜单10,MultiAutoCompleteTextView可支持选择多个值,分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配,它与AutoCompleteTextView的区别是AutoCompleteTextView一个文本框只能输入一个值,而MultiAutoCompleteTextView可以输入多个值,中间的分隔符在代码中设置11,日期时间控件DatePicker/TimePicker,继承至FrameLayout,DatePicker用于选择日期,TimePicker用于选择时间12,进度条ProgressBar用于向用户显示某个耗时操作完成的百分比,可通过style属性为其指定风格,setProgress(int) 设置进度完成的百分比,incrementProgressBy(int) 设置增量/减量13,拖动条seekBar,继承AbsSeekBar,通常用于对系统的某些参数进行调节,允许改变滑块的外观,Android:thumb 用来指定一个Drawable对象,OnSeekBarChangeListener可处理滑动事件14,星级评分条RatingBar,继承AbsSeekBar,OnRatingBarChangeListener可处理评分事件15,代表应用程序的菜单Menu,Android中的菜单需要用户单击手机上的“MENU”按键时才会显示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
属性名称 android:text=“” android:autoLink=”” android:hint="请输入数字!" android:textColor = "#ff8c00" android:textSize="20dip" android:layout_gravity="center_vertical" 文字显示 链接类型。Web网址,email邮件, phone电话,map地图。Linkify。 当TextView中显示的内容为空时,显 示该文本 字体颜色 字体大小 设置控件显示的位置:默认top,这 里居中显示,还有bottom 说明
按ห้องสมุดไป่ตู้控件
• android.widget.Button最常用的按钮,继承自 android.widget.TextView,在android.widget包中。 • 他的常用子类CheckBox, RadioButton, ToggleButton。 • 通常用法: • super.findViewById(id)得到在layout中声明的 Button的引用, setOnClickListener(View.OnClickListener)添加 监听。然后再View.OnClickListener监听器中使 用v.equals(View)方法判断哪个按钮被按下,进 行分别处理。
单选与复选按钮
• • • • • • • • android.widget.CheckBox复选按钮,继承自 poundButton,在android.widget包中。 常用方法: isChecked()检查是否被选中。 监听按钮状态更改,需要添加 setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener); android.widget. RadioButton单选按钮,继承自 poundButton,在android.widget包中。 通常用法: 单选按钮要声明在RadioGroup,RadioGroup是流式布局 android.widget.LinearLayout的子类。 单选按钮状态更改的监听,是要给他的RadioGroup添加 setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener)监听 器。注意监听器类型和CheckBox是不一样的。
相关类包
• TimePickerDialog、DatePickerDialog • 以对话框形式显示日期时间视图 • Calendar • 日历是设定年度日期对象和一个整数字 段之间转换的抽象基类,如,月,日, 小时等。
• ImageButton继承自ImageView类,与 Button之间的最大区别在于ImageButton 中没有text属性。ImageButton控件中设置 按钮中显示的图片可以通过android:src 属性来设置。也可以通过 setImageResource(int)来设置。
状态开关按钮
• 常用方法:
setAlpha(int) setImageBitmap(Bitmap) setImageDrawable(Drawable) setImageURI(Uri) setSelected(boolean) setImageResource(int) 设置ImageView透明度 设置ImageView显示的内容为Bitmap 对象 设置ImageView所显示内容为 Drawable 设置ImageView所显示内容为Uri 设置ImageView的选择状态 设置ImageView显示内容的指定的id 资源
• 注册实例练习
图片控件
• ImageView控件负责显示图片,其图片的来源可 以是在资源文件中的id,也可以是Drawable对象 或者位图对象。还可以是Content Provider的URI。 • 常用属性:
Android:adjustViewBounds Android:maxHeight Android:maxWidth Android:src Android:scaleType 设置是否需要ImageView调整自己的边 界,保证图片的显示比例 最大高度 最大宽度 图片路径 调整或移动图片
• TimePicker • 查看一个在24小时或上午/下午模式下一天的时间。 • 常用方法
– – – – – setCurrentMinute(Integer currentMinute)设置当前时间的分钟 getCurrentMinute()获取当前时间的分钟 setEnabled(boolean enabled)设置当前视图是否可以编辑。 m_TimePicker.setIs24HourView(true);设置为24小时制显示 setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener)当时间改变时调用
• android.widget.EditText为输入框,继承自 android.widget.TextView,在android.widget包中。 • 常用属性设置:
android:hint="请输入用户名" android:password="" android:phoneNumber="" android:digits android:numeric="" 输入框的提示文字 True为密码框 True为电话框 设置允许输入哪些字符。如 “1234567890.+-*/%\n()” 数字框。Integer正整数, signed整数 (可带负号), decimal浮点数。
时钟控件
• AnalogClock • DigitalClock • 这两个控件都负责显示时钟,其中 AnalogClock用来显示模拟时钟,而 DigitalClock显示数字时钟,精确到秒。
日期与时间选择控件
• • • • • • DatePicker 常用方法: getDayOfMonth():获取当前Day getMonth():获取当前月 getYear()获取当前年 updateDate(int year, int monthOfYear, int dayOfMonth):更新日期
• android.widget. ToggleButton开关形式的按钮,继 承自poundButton,在 android.widget包中。 • 常用属性设置: 选择状态文字 未选状态文字
android:textOn="" android:textOff=""
时钟控件
– AnalogClock – DigitalClock
日期与时间选择控件
– DatePicker – TimePicker
文本控件
• android.widget.TextView一般用来文本展示,继承自 android.view.View,在android.widget包中。 • 常用属性设置:
Android 开发 常用基本控件
常用控件(Widget)
• • • • • • • 文本控件
– TextView – EditText
按钮控件
– Button – ImageButton
状态开关按钮
– ToggleButton
单选与复选按钮
– CheckBox和RadioButton
图片控件
– ImageView
相关文档
最新文档