Welcome 微信登录

首页 / 操作系统 / Linux / Android学习笔记2——布局与事件响应

Andorid的界面,需要写在res/layout的xml里面,一般情况下一个xml对应一个界面。做Android的界面有点像写html(连注释代码的方式都一样),要先给android定框架,然后再在框架里面放控件,android提供了几种框架,AbsoluteLayout,LinearLayout,RelativeLayout,TableLayout,FrameLayout
FrameLayout:里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角
LinearLayout:里面可以放多个控件,但是一行只能放一个控件
TableLayout:这个要和TableRow配合使用,很像html里面的table
AbsoluteLayout:里面可以放多个控件,并且可以自己定义控件的x,y的位置
RelativeLayout:里面可以放多个控件,不过控件的位置都是相对位置 一个控件的基本框架是:框架的xml如下:
<AbsoluteLayout
android:id="@+id/name"      
android:layout_width="fill_parent"
android:layout_height="fill_parent"
> 在java文件里面就会有:findViewById(R.id.name);来获取控件对象。 以一个button为例:xml文件中:<Button
 android:id="@+id/submit"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="ok" 
 /> java文件中: 在onCreate函数中获取button对象,设置事件响应函数:Button mybutton=(Button)findViewById(R.id.submit);
mybutton.setOnClickListener(mybuttonlistener); 然后添加事件响应函数:private OnClickListener mybuttonlistener = new OnClickListener(){
     public void onClick(View v) {
      switch (v.getId()){
      case R.id.submit:           xxxx;       }
   }
 };即可。 跟普通java的写法一样。关键在于android的sdk库,这个是需要了解清楚的地方。这个例子的效果如下图所示: