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代码需要记住如何实现一个一个程序的功能,通过模仿学习,不断总结,不断解决所遇到的问题来完成学习。

最新文章

  1. js实现图片实时预览
  2. [转]关于vs调试正确。但是发布到iis就出现无法访问后天局面
  3. springmvc 通过异常增强返回给客户端统一格式
  4. SPOJ 375. Query on a tree (树链剖分)
  5. codeforces C. Fixing Typos 解题报告
  6. iOS - OC NSTimeZone 时区
  7. iOS --- [持续更新中] iOS移动开发中的优质资源
  8. 指定为文件头部Expires要么Cache-Control
  9. 利用servicestack连接redis
  10. sendUserActionEvent() mView== null after clicking on button
  11. 团队作业8——Beta 阶段冲刺5th day
  12. Windows的四类消息
  13. MFC的PNG贴图按钮类(详细注释)
  14. webshell导致项目崩溃
  15. python之json数据存储
  16. (转)Maven pom.xml 配置详解
  17. PWDX查找程序执行路径
  18. 字符串 dfs
  19. python学习之str.lstrip()
  20. nginx 配置 getsimplecms 配置文件

热门文章

  1. .NET中代理服务器WebProxy的各种用法
  2. 读书笔记 effective c++ Item3 在任何可能的时候使用 const
  3. 《无所不能的JavaScript编程系列:arguments 参数对象》
  4. Swift 2.2 最基本的多线程
  5. (4)activiti之uel表达式
  6. DFS 分布式文件系统 选型笔记
  7. Java TreeSet集合排序 && 定义一个类实现Comparator接口,覆盖compare方法 && 按照字符串长度排序
  8. wpf后置代码中的Grid布局以及图片路径的设置
  9. webpack入门与解析(一)
  10. ReactNative入门(1)初识ReactJs