Android基本控件和事件以及消息总结
Android学生空间界面设计涉及到的常用基本控件有TextView,EditText,Button,ImageView,CheckBox,RadioButton,基本事件有触屏和键盘事件,包括onTouchEvent,View.OnKeyListener等,菜单包括选项菜单和上下文菜单,消息通知Notification
近一个月的学习,让我对Android有了一个初步的认识,学习Android从基础知识学起。这一章学的为基本的界面设计,其中有着界面布局,控件,事件,消息通知。在学习中我学会了如何跟着老师的思路,再通过课后的学习和练习来巩固自己在课上学到的知识。这当中也遇到了许多基本的Android问题,包括如何建立一个layout布局,以及界面控件中TextView,EditText中layout的设计和居中,居右,居左问题,以及layout的完整性。
基本控件很简单,有些组件需要在Java中定义它们,如
private ImageView image;
private RadioButton cmh;
还需用findViewById获取组件的ID,如:
image = (ImageView) findViewById(R.id.image);
chkchinese=(CheckBox)findViewById(R.id.chb_Chinese);
组件按钮需设置监听,在按钮的onClick重获取组件并显示
btnConfirm.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
String name=edtname.getText().toString();
我觉得Java中的代码是需要一步一步来编写的,这其中需要思考的,不能按部就班的写代码。在学习中解决问题,复习学过的知识。
控件所遇到的问题,以及解决的方法:
*控件要设置ID的需要设置,需要获取的必须写上。
*在写RadioButton时需要一个Radiogroup来写时,不能在其中设置linerlayout,否则会破坏group中只能单选按钮的规则。
*在imageView中用图时需要从drawerable中把图片放进去。

*TextView中跑马灯的效果需要用android:ellipsize="marquee";
触屏中的问题比较难理解,反正就是当按钮被点击时,方法的调用,处理触屏事件:
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction()==MotionEvent.ACTION_DOWN) {
float x=event.getX();
float y=event.getY();
String pos="x坐标:"+x+",y坐标:"+y;
Toast.makeText(this,pos,Toast.LENGTH_LONG).show();
}
return super.onTouchEvent(event);
}
菜单以及通知
public boolean onCreateOptionsMenu(Menu menu){
//1.动态菜单
menu.add(Menu.NONE,Menu.FIRST+1,1,"保存").setIcon(android.R.drawable.ic_menu_save);
menu.add(Menu.NONE,Menu.FIRST+2,3,"删除").setIcon(android.R.drawable.ic_menu_delete);
menu.add(Menu.NONE,Menu.FIRST+3,2,"打开").setIcon(android.R.drawable.ic_menu_add);
//2.子菜单
SubMenu subMenu=menu.addSubMenu("子菜单");
subMenu.add(0,101,0,"子菜单1");
subMenu.add(0,102,0,"子菜单2");
//3.从xml加载
getMenuInflater().inflate(R.menu.main,menu);
MenuInflater inflater=getMenuInflater();//获取菜单加载器
inflater.inflate(R.menu.main,menu);//加载菜单的xml到menu对象
return true;
}

消息通知用toast定义,如
Toast.makeText(MainActivity.this,info,Toast.LENGTH_LONG).show();
}
});
这之上的基本就是这章的全部内容,在Android中的学习不局限于课上的学习,课后学习和练习也是很重要的。在练习中遇到的问题大都可以通过Internet解决,所以大都来自前辈的经验,他们也是不断地练习来总结的。不过Java代码中的编写是我的难点,Java没学到位是我的痛,所以在activity中Java代码需要记住如何实现一个一个程序的功能,通过模仿学习,不断总结,不断解决所遇到的问题来完成学习。
Android基本控件和事件以及消息总结的更多相关文章
- android CheckBox控件的定义及事件监听
http://www.beijibear.com/index.php?aid=336 android CheckBox控件的定义及事件监听,本例实现CheckBox控件的定义及点击事件的监听并显示结果 ...
- Android 开源控件与常用开发框架开发工具类
Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...
- android UI控件小记
1.关于text和drawableTop之类的间距 android:drawablePadding="10dp" 2.EditText属性 android:phoneNumber= ...
- Android之控件使用
Android系统为我们提供了大量的控件,例如:开关控件.单选按钮.多选按钮.单选菜单等等,那么这些控件如何使用呢?本篇我将带领大家一道学习一下如何使用这些控件.所谓无图无真相,先让大家看一下效果图: ...
- android 基础控件(EditView、SeekBar等)的属性及使用方法
android提供了大量的UI控件,本文将介绍TextView.ImageView.Button.EditView.ProgressBar.SeekBar.ScrollView.WebView ...
- 如何给ActiveX控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作
上一篇小编带大家熟悉了一下ActiveX的建立以及相关的概念,(http://blog.csdn.net/u014028070/article/details/38424611) 本文介绍下如何给控件 ...
- Android基本控件之Menus
在我们的手机中有很多样式的菜单,比如:我们的短信界面,每条短信,我们长按都会出现一个菜单,还有很多的种类.那么现在,我们就来详细的讨论一下安卓中的菜单 Android的控件中就有这么一个,叫做Menu ...
- 自己实现的android树控件,android TreeView
1.开发原因 在项目中经常需要一个需要一个树状框架,这是非常常见的控件.不过可能是谷歌考虑到android是手机系统,界面宽度有限, 所以只提供了只有二级的ExpandableListView.虽然这 ...
- 矩阵, 矩阵 , Android基础控件之ImageView
天下文章大家抄,以下所有内容,有来自copy,有来自查询,亦有自己的总结(目的是总结出自己的东西),所以说原创,不合适,说是转载也不恰当,所以我称之为笔记,可惜没有此分类选项,姑且不要脸一点,选择为原 ...
随机推荐
- Linux编程之ICMP洪水攻击
我的上一篇文章<Linux编程之PING的实现>里使用ICMP协议实现了PING的程序,ICMP除了实现这么一个PING程序,还有哪些不为人知或者好玩的用途?这里我将介绍ICMP另一个很有 ...
- Pycharm安装及遇到的问题
趁寒假想自学一下python语言,有人推荐eclipse+pydev但是因为java编程用了eclipse,不太想一个IDE用于多种语言开发(个人喜好),于是就下载了Pycharm,之间安装了也遇到了 ...
- 制作 OpenStack Windows 镜像 - 每天5分钟玩转 OpenStack(152)
这是 OpenStack 实施经验分享系列的第 2 篇. OpenStack 通过 Glance 镜像部署 instance,上一节我们介绍了 linux 镜像制作方法,windows 镜像与 lin ...
- javascript之自增自减典型运算(易错)
JavaScript“自增”运算符与表达式 递增运算符(++)是一个一元运算符,该运算符可以将操作数进行递增操作,即每次增加1.递增运算符要求其操作数必须是变量.对象中的某个属性或数组中的某个元素,并 ...
- 这是一款可以查阅Github上的热门趋势的APP
随时查阅当前Github上的热门趋势.使用Material Design设计风格,和流行的MVP+Retrofit+RxJava框架.数据抓取自https://github.com/trending ...
- BZOJ 3401: [Usaco2009 Mar]Look Up 仰望(离线+平衡树)
刷银组刷得好开心= = 离线按权值排序,从大到小插入二叉树,查找树中比这个数大的 CODE: #include<cstdio>#include<iostream>#includ ...
- canvas实例:旋转缩放的方块
首先在页面中创建一个canvas标签: <body> <canvas id="c1" width="500" height="500 ...
- linux c++ 加载动态库常用的三种方法
链接库时的搜索路径顺序:LD_LIBRARY_PATH --> /etc/ld.so.conf --> /lib,/usr/lib 方法1. vi .bash_profile 设置环 ...
- 学习笔记——Java数组
1.创建一维数组 最简单快捷的方法是:声明的同时为数组分配内存.如: int month[]=new int[12] 也可以先声明再分配内存.如: int month[]; //或int[] mont ...
- 【openstack N版】——块存储服务cinder
一.块存储服务介绍 1.1块存储服务通常包含以下组件 cinder-api: 接受API请求,并将其路由到"cinder-volume"执行. cinder-volume: 与块存 ...