android 布局分为LinearLayout TableLayoutRelativeLayout FreamLayout AbsoluteLayout.

常用的有LinearLayout,TableLayout,RelativeLayout ,这几个布局不会应该手机屏幕大小而有变化。通常我们使用HVGA 大小的屏幕(320*480).

接下来我们学习RelativeLayout.

原文引入找不到了。这里记录一下。

看一下效果图吧。


还有两个常用组件的图片。



main.xml代码如果

<?xml version="1.0" encoding="utf-8"?>  <!-- 相对布局  一个控件相对于另一个控件或者容器的位置。 -->  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"      android:orientation="vertical"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      >      <TextView            android:id="@+id/describe_view"           android:layout_width="fill_parent"           android:layout_height="wrap_content"           android:text="@string/hello"          android:textColor="#556055"          />       <!-- 这个TextView相对于上一个TextView 在 它的下方所以设置属性为layout_below-->       <TextView          android:id="@+id/username_view"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_marginTop="12dp"          android:text="@string/username"          android:textColor="#556055"          android:layout_below="@id/describe_view"       />       <EditText          android:id="@+id/username_edit"          android:layout_width="90dp"          android:layout_height="40dp"          android:layout_marginTop="4dp"          android:layout_toRightOf="@id/username_view"          android:layout_below="@id/describe_view"       />       <TextView          android:id="@+id/sex_view"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_marginTop="12dp"          android:text="@string/sex"          android:textColor="#556055"          android:layout_below="@id/describe_view"          android:layout_toRightOf="@id/username_edit"       />       <RadioGroup          android:id="@+id/sex_radiogroup"          android:orientation="horizontal"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_toRightOf="@id/sex_view"          android:layout_below="@id/describe_view"          >          <!--第一个RadioButton -->          <RadioButton            android:id="@+id/male_radiobutton"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="男"           android:checked="true"         />          <!--第二个RadioButton -->          <RadioButton            android:id="@+id/woman_radiobutton"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="女"          />       </RadioGroup>       <TextView          android:id="@+id/age_view"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:paddingTop="25dp"          android:text="@string/age"          android:textColor="#556055"          android:layout_below="@id/username_view"       />              <EditText          android:id="@+id/brithday_edit"          android:layout_width="90dp"          android:layout_height="40dp"          android:layout_marginTop="4dp"          android:hint="@string/selectdate"          android:textSize="13sp"          android:gravity="center"          android:editable="false"          android:layout_toRightOf="@id/age_view"          android:layout_below="@id/username_edit"       />      <TextView          android:id="@+id/education_view"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:paddingTop="25dp"          android:text="@string/education"          android:textColor="#556055"          android:layout_below="@id/sex_view"          android:layout_toRightOf="@id/brithday_edit"       />       <!-- 下拉列表控件 -->       <Spinner          android:id="@+id/edu_spinner"          android:layout_width="108dp"          android:layout_height="38dp"        android:prompt="@string/prompt"          android:entries="@array/entries"        android:layout_below="@id/sex_radiogroup"          android:layout_toRightOf="@id/education_view"       />       <TextView          android:id="@+id/interest_view"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:paddingTop="25dp"          android:text="@string/interest"          android:textColor="#556055"          android:layout_below="@id/age_view"       />       <!-- 复选框控件 -->       <CheckBox          android:id="@+id/car_check"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:text="@string/car"          android:textColor="#566156"          android:layout_toRightOf="@id/interest_view"          android:layout_below="@id/brithday_edit"       />       <CheckBox          android:id="@+id/sing_check"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_marginLeft="11dp"          android:text="@string/sing"          android:textColor="#566156"          android:layout_toRightOf="@id/car_check"          android:layout_below="@id/brithday_edit"       />       <CheckBox          android:id="@+id/movie_check"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_marginLeft="11dp"          android:text="@string/movie"          android:textColor="#566156"          android:layout_toRightOf="@id/sing_check"          android:layout_below="@id/brithday_edit"       />        <Button         android:layout_width="100dp"          android:layout_height="40dp"          android:text="@string/notify"        android:id="@+id/notity"        android:layout_marginLeft="20dp"          android:layout_marginTop="15dp"          android:layout_below="@+id/sing_check"     />     <Button          android:id="@+id/submit_button"          android:layout_width="100dp"          android:layout_height="40dp"          android:text="@string/submit"          android:gravity="center"          android:layout_below="@id/movie_check"          android:layout_marginLeft="210dp"          android:layout_marginTop="15dp"       />    </RelativeLayout> 

string.xml

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">Hello World, LayoutDemoActivity!</string>    <string name="app_name">LayoutDemo</string>    <string name="username">用户:</string>    <string name="sex">性别:</string>    <string name="selectdate">出生日期</string>    <string name="education">学历:</string>    <string name="interest">爱好:</string>    <string name="age">年龄:</string>    <string name="car">汽车</string>    <string name="sing">唱歌</string>    <string name="movie">电影</string>    <string name="submit">提交</string>    <string name="prompt">学历</string>    <string-array name="entries">    <item>本科</item>    <item>专科</item>    <item>研究生</item>    <item>硕士</item>    <item>博士</item>    </string-array>    <string name="notify">通知</string>    <string name="content">     Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用安卓(非官方)或安致(官方)。Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。 2010年末数据显示,仅正式推出两年的操作系统的Android已经超越称霸十年的诺基亚Symbian系统,跃居全球最受欢迎的智能手机平台。Android的主要竞争对手是苹果的IOS,微软的WP7以及RIM的Blackberry OS。    </string></resources>

又下主要代码的实现,有一个通知的代码。

package com.hkrt.action;import java.util.Calendar;import android.app.Activity;import android.app.DatePickerDialog;import android.app.Notification;import android.app.NotificationManager;import android.app.PendingIntent;import android.content.Intent;import android.os.Bundle;import android.view.Gravity;import android.view.View;import android.widget.Button;import android.widget.CheckBox;import android.widget.DatePicker;import android.widget.EditText;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.RadioButton;import android.widget.Spinner;import android.widget.Toast;public class LayoutDemoActivity extends Activity { private  EditText brithdayEditText   = null;    EditText userName; RadioButton male; RadioButton woman; Spinner  sEducation; String sex=null; CheckBox car,sing,movie;//爱好 StringBuffer hobby = new StringBuffer();    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        brithdayEditText =(EditText) this.findViewById(R.id.brithday_edit);        brithdayEditText.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Calendar c = Calendar.getInstance();new DatePickerDialog(LayoutDemoActivity.this,new DatePickerDialog.OnDateSetListener(){@Overridepublic void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {brithdayEditText.setText(year+"-"+(monthOfYear+1)+"-"+dayOfMonth);}},c.get(Calendar.YEAR),c.get(Calendar.MONTH),c.get(Calendar.DAY_OF_MONTH)).show();}});          userName =(EditText)this.findViewById(R.id.username_edit);          male =(RadioButton)this.findViewById(R.id.male_radiobutton);  woman =(RadioButton)this.findViewById(R.id.woman_radiobutton);   sEducation =(Spinner)this.findViewById(R.id.edu_spinner);  car = (CheckBox)this.findViewById(R.id.car_check);  sing =(CheckBox) this.findViewById(R.id.sing_check);  movie = (CheckBox)this.findViewById(R.id.movie_check);     Button buttonSub = (Button)this.findViewById(R.id.submit_button);  buttonSub.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {if(userName.getText().toString().trim().length()==0){Toast toast =Toast.makeText(getApplicationContext(), "用户名不能为空", 0);toast.setGravity(Gravity.CENTER, 0, 0);View toastView = toast.getView();ImageView image = new ImageView(LayoutDemoActivity.this);image.setImageResource(R.drawable.icon1);LinearLayout ll = new LinearLayout(LayoutDemoActivity.this);ll.addView(image);ll.addView(toastView);toast.setView(ll);toast.show();}else{  if(male!=null){  sex=male.getText().toString();  }else{  sex=woman.getText().toString();  }   if(car.isChecked()){  hobby.append(car.getText()).append("|");  }  if(sing.isChecked()){  hobby.append(sing.getText()).append("|");  }  if(movie.isChecked()){  hobby.append(movie.getText());  }Toast.makeText(getApplicationContext(), userName.getText() +""+ sex+""+ brithdayEditText.getText()+""+sEducation.getSelectedItem().toString()+""+hobby.toString(), 0).show();System.out.println("结果"+userName.getText() +""+ sex+""+ brithdayEditText.getText()+""+sEducation.getSelectedItem().toString()+""+hobby.toString());}}});  /**通知的demo示例*/  Button notityBut = (Button)this.findViewById(R.id.notity);  notityBut.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(LayoutDemoActivity.this,OtherActivity.class);PendingIntent contentIntent = PendingIntent.getActivity(LayoutDemoActivity.this, 0, intent, 0);Notification notify = new Notification();notify.icon=R.drawable.icon1;//notify.sound=Uri.parse("file:///sdcard/Crazy.mp3");notify.tickerText="启动otherActivity通知";notify.when=System.currentTimeMillis();notify.defaults=Notification.DEFAULT_SOUND;notify.defaults=Notification.DEFAULT_ALL;notify.setLatestEventInfo(LayoutDemoActivity.this, "普通通知", "点击查看", contentIntent);NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);manager.notify(0, notify);}});    }}

注:通知是打开另一个activity,


更多相关文章

  1. Android(安卓)CoordinatorLayout 实战案例学习《二》
  2. SystemUI之功能介绍和UI布局实现
  3. android自定义title的方法
  4. android view的setVisibility方法值的意思
  5. android 设置控件的字体
  6. Android绚丽加载效果视图(loading)控件
  7. FrameLayout布局绘制流程解析
  8. android学习笔记之一常用控件
  9. Android(安卓)自动化测试―robotium(三)EditText控件

随机推荐

  1. 问题:在运行android的项目时出现的异常
  2. Android studio 不能预览布局文件
  3. 第一个app项目
  4. android自定义menu,PopUpWindow弹出菜单
  5. eclipse 导入 android studio 问题汇总
  6. 通过Location获取Address的使用!
  7. Android基础 DatePicker和TimePicker的使
  8. Android的列表布局
  9. 屏幕切换,保存内容
  10. Android(java)学习笔记129:Tab标签的使用