今天我学习了下常见的布局上一讲已经接触了线性布局 这次我们主要来学学: 包括表格布局 相对布局 单帧布局 坐标布局 还做了一个常用控件的事件处理
1表格布局:(TableLayout)是以行列的形式来管理子控件的 在表格布局的每一行可以是一个view控件或者是一个TableRow控件 而TableRow控件中还可以添加子控件
先来看下效果图
<!--[if !supportLineBreakNewLine]-->
<!--[endif]--><?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="表头"
/>
<TableRow
android:gravity="center"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第0列"
>
</TextView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第1列"
>
</TextView>
</TableRow>
<TableRow
android:gravity="center"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮1"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="按钮2"
/>
</TableRow>
</TableLayout>
相对布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="中间的按钮,很长很长很长"
android:layout_centerInParent="true"
>
</Button>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上面的按钮"
android:layout_above="@id/button1"
android:layout_alignLeft="@id/button1"
>
</Button>
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下面的按钮"
android:layout_below="@id/button1"
android:layout_alignRight="@id/button1"
>
</Button>
</RelativeLayout>
单帧布局
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/big"
>
</ImageView>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/center"
>
</ImageView>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/small"
>
</ImageView>
</FrameLayout>
坐标布局
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名:"
android:layout_x="10px"
android:layout_y="20px"
>
</TextView>
<EditText
android:layout_width="90px"
android:layout_height="wrap_content"
android:layout_x="70px"
android:layout_y="10px"
>
</EditText>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密 码:"
android:layout_x="10px"
android:layout_y="75px"
>
</TextView>
<EditText
android:layout_width="90px"
android:layout_height="wrap_content"
android:layout_x="70px"
android:layout_y="60px"
>
</EditText>
</AbsoluteLayout>
再写一个事件监听的程序
效果图
布局文件main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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/textView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="您没有点击任何按钮"
/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮"
>
</Button>
<ImageButton
android:id="@+id/imageButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/img"
>
</ImageButton>
<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</ToggleButton>
</LinearLayout>
事件处理的文件 MyView.java
先看效果图
package wyf.ytl;
import android.app.Activity;//引入相关的包
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.ToggleButton;
public class Sample_2_6 extends Activity implements OnClickListener{
Button button;//普通按钮
ImageButton imageButton;//图片按钮
ToggleButton toggleButton;//开关按钮
TextView textView;//文本控件
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {//回调方法
super.onCreate(savedInstanceState);
setContentView(R.layout.main);//设置显示的View
textView = (TextView) this.findViewById(R.id.textView);
button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(this);//为button添加监听器
imageButton = (ImageButton) this.findViewById(R.id.imageButton);
imageButton.setOnClickListener(this);//为imageButton添加监听器
toggleButton = (ToggleButton) this.findViewById(R.id.toggleButton);
toggleButton.setOnClickListener(this);//为toggleButton添加监听器
}
public void onClick(View v) {//重写的事件处理回调方法
if(v == button){//点击的是普通按钮
textView.setText("您点击的是普通按钮");
}
else if(v == imageButton){//点击的是图片按钮
textView.setText("您点击的是图片按钮");
}
else if(v == toggleButton){//点击的是开关按钮
textView.setText("您点击的是开关按钮");
}
}
}
- 大小: 4 KB
- 大小: 7 KB
- 大小: 8.3 KB
- 大小: 5 KB
- 大小: 10 KB
分享到:
相关推荐
在Android平台开发之旅中,你将踏上一次深入学习Android应用开发的旅程。这本书的第二版提供了全面的源代码,确保所有示例都能成功运行,帮助读者掌握实际开发技能。源代码是理解书中理论知识的关键,它能让你亲自...
根据提供的文件信息,“Android平台开发之旅(第2版).pdf”这一资料似乎是一本关于Android应用开发的专业书籍。虽然给出的部分内容并未包含实际的知识点,但从书名和描述来看,我们可以推断出这本书可能覆盖的一些...
根据提供的标题、描述和部分上下文内容,“Android平台开发之旅(第2版)”这本书主要聚焦于Android平台的应用程序开发。虽然提供的部分内容并没有直接涉及到具体的Android开发知识点,但我们可以基于书名和主题,来...
【Android 开发之旅:详解view的几种布局方式及实践】 在Android应用开发中,构建用户界面至关重要,而View和ViewGroup是构建用户界面的基础。View是Android系统中表示用户界面的基本元素,而ViewGroup则作为容器,...
在Android平台开发之旅中,源代码是学习和深入理解Android应用程序开发的关键。这份源代码全集为开发者提供了宝贵的实践资源,涵盖了从基础到高级的各种Android开发技术。通过研究这些源码,开发者可以深入掌握...
在“通往Android的神奇之旅 第六章Extension.rar”这一压缩包中,我们聚焦于Android开发的学习,特别是关于扩展性方面的内容。本章可能涵盖了Android应用开发的多个关键领域,包括但不限于基本控件、高级控件的使用...
首先,Activity是Android四大组件之一,它承载了用户界面并处理用户交互。一个Android应用可以包含多个Activity,每个Activity都有自己的生命周期,包括创建、启动、暂停、恢复和销毁等状态。理解Activity的生命周期...
本章节“通往Android的神奇之旅 第十一章Map”将深入探讨如何在Android应用程序中集成和操作地图。通过本章节的学习,开发者将能够熟练地在Android应用中展示地理位置信息,实现地图的缩放、平移、定位以及添加标记...
### Android中XML属性与解析深度解析 #### 一、引言 在Android开发中,XML文件扮演着至关重要的角色,特别是在界面布局设计方面。通过理解并掌握XML的基本属性...希望本文能为您的Android开发之旅提供有价值的指导。
在Android应用开发中,日历选择是一个常见的功能,特别是在旅游、酒店预订以及行程安排类的应用中。去哪儿网、携程旅行等应用中的日历选择组件,为用户提供了方便的方式来选取特定的日期,完成预订或者查看日程。本...
首先,"Android入门教程"是开始Android学习之旅的关键。这个教程通常会介绍Android开发环境的搭建,包括安装Android Studio,这是Google官方推荐的集成开发环境(IDE)。在Android Studio中,你可以创建新的项目,...
Android开发中,软键盘挡住输入框是一个常见的问题,本文将详细讲解该问题的解决方案。 一、问题描述 在Android开发中,软键盘挡住输入框是一个非常常见的问题。这种情况通常发生在EditText位于屏幕底部时,当软...
### Android开发基础知识详解 #### 一、Android项目结构与基础控件 在开始学习Android开发之前,理解项目的结构和常用的基础控件是...希望这篇文章能够帮助大家更好地入门Android开发,开启精彩的移动应用开发之旅!
本教程将带你深入了解Android的各个方面,为你的编程之旅打下坚实的基础。 1. **Android开发环境搭建**:首先,你需要安装Android Studio,这是官方推荐的集成开发环境(IDE)。它包含了所有必要的工具,如Java ...
本教程的高清版将涵盖以上所有内容,并可能包含更多实用技巧和实例演示,帮助初学者逐步掌握Android Studio,开启Android开发之旅。通过学习和实践,你将能够独立创建出功能丰富的Android应用程序。
**Android基础教程2** 在Android开发的道路上,深入理解基础知识是...深入理解和掌握这些知识点,将为你的Android开发之旅奠定坚实的基础。通过不断实践和学习,你将能够创造出功能丰富、用户体验优秀的Android应用。
- **SDK安装与配置**:为了开始Android 2.x应用开发之旅,首先需要安装Android SDK(Software Development Kit)。本书将指导读者完成SDK的安装,并介绍如何设置开发环境,包括集成开发环境(IDE)的选择与配置。 - **...
在Android学习的旅程中,初学者常常面临众多资源的选择困境,而"android学习入门资料"这一压缩包似乎提供了史上最全的资源...通过系统学习这些知识点,初学者可以逐步掌握Android开发技能,开启自己的Android开发之旅。