`
qinweiping
  • 浏览: 131356 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类
最新评论

android之旅(二)常见布局及简单事件处理

阅读更多

今天我学习了下常见的布局上一讲已经接触了线性布局 这次我们主要来学学: 包括表格布局  相对布局 单帧布局 坐标布局 还做了一个常用控件的事件处理

 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
0
0
分享到:
评论

相关推荐

    Android平台开发之旅 源代码

    在Android平台开发之旅中,你将踏上一次深入学习Android应用开发的旅程。这本书的第二版提供了全面的源代码,确保所有示例都能成功运行,帮助读者掌握实际开发技能。源代码是理解书中理论知识的关键,它能让你亲自...

    Android平台开发之旅(第2版).pdf

    根据提供的文件信息,“Android平台开发之旅(第2版).pdf”这一资料似乎是一本关于Android应用开发的专业书籍。虽然给出的部分内容并未包含实际的知识点,但从书名和描述来看,我们可以推断出这本书可能覆盖的一些...

    Android平台开发之旅(第2版)

    根据提供的标题、描述和部分上下文内容,“Android平台开发之旅(第2版)”这本书主要聚焦于Android平台的应用程序开发。虽然提供的部分内容并没有直接涉及到具体的Android开发知识点,但我们可以基于书名和主题,来...

    Android 开发之旅:详解view的几种布局方式及实践

    【Android 开发之旅:详解view的几种布局方式及实践】 在Android应用开发中,构建用户界面至关重要,而View和ViewGroup是构建用户界面的基础。View是Android系统中表示用户界面的基本元素,而ViewGroup则作为容器,...

    android平台开发之旅源代码

    在Android平台开发之旅中,源代码是学习和深入理解Android应用程序开发的关键。这份源代码全集为开发者提供了宝贵的实践资源,涵盖了从基础到高级的各种Android开发技术。通过研究这些源码,开发者可以深入掌握...

    通往Android的神奇之旅 第六章Extension.rar

    在“通往Android的神奇之旅 第六章Extension.rar”这一压缩包中,我们聚焦于Android开发的学习,特别是关于扩展性方面的内容。本章可能涵盖了Android应用开发的多个关键领域,包括但不限于基本控件、高级控件的使用...

    Android应用程序窗口(Activity) · 老罗的Android之旅(总结) · 看云1

    首先,Activity是Android四大组件之一,它承载了用户界面并处理用户交互。一个Android应用可以包含多个Activity,每个Activity都有自己的生命周期,包括创建、启动、暂停、恢复和销毁等状态。理解Activity的生命周期...

    通往Android的神奇之旅 第十一章Map.rar

    本章节“通往Android的神奇之旅 第十一章Map”将深入探讨如何在Android应用程序中集成和操作地图。通过本章节的学习,开发者将能够熟练地在Android应用中展示地理位置信息,实现地图的缩放、平移、定位以及添加标记...

    Android中XML属性与解析

    ### Android中XML属性与解析深度解析 #### 一、引言 在Android开发中,XML文件扮演着至关重要的角色,特别是在界面布局设计方面。通过理解并掌握XML的基本属性...希望本文能为您的Android开发之旅提供有价值的指导。

    android 日历选择,类似于去哪儿,携程,酒店预订功能

    在Android应用开发中,日历选择是一个常见的功能,特别是在旅游、酒店预订以及行程安排类的应用中。去哪儿网、携程旅行等应用中的日历选择组件,为用户提供了方便的方式来选取特定的日期,完成预订或者查看日程。本...

    android学习文档

    首先,"Android入门教程"是开始Android学习之旅的关键。这个教程通常会介绍Android开发环境的搭建,包括安装Android Studio,这是Google官方推荐的集成开发环境(IDE)。在Android Studio中,你可以创建新的项目,...

    Android 爬坑之旅:软键盘挡住输入框问题的终极解决1

    Android开发中,软键盘挡住输入框是一个常见的问题,本文将详细讲解该问题的解决方案。 一、问题描述 在Android开发中,软键盘挡住输入框是一个非常常见的问题。这种情况通常发生在EditText位于屏幕底部时,当软...

    Android开发笔记(基础Android课程)

    ### Android开发基础知识详解 #### 一、Android项目结构与基础控件 在开始学习Android开发之前,理解项目的结构和常用的基础控件是...希望这篇文章能够帮助大家更好地入门Android开发,开启精彩的移动应用开发之旅!

    Android 入门学习教程

    本教程将带你深入了解Android的各个方面,为你的编程之旅打下坚实的基础。 1. **Android开发环境搭建**:首先,你需要安装Android Studio,这是官方推荐的集成开发环境(IDE)。它包含了所有必要的工具,如Java ...

    Android Studio 入门级教程(高清版)

    本教程的高清版将涵盖以上所有内容,并可能包含更多实用技巧和实例演示,帮助初学者逐步掌握Android Studio,开启Android开发之旅。通过学习和实践,你将能够独立创建出功能丰富的Android应用程序。

    Android基础教程2

    **Android基础教程2** 在Android开发的道路上,深入理解基础知识是...深入理解和掌握这些知识点,将为你的Android开发之旅奠定坚实的基础。通过不断实践和学习,你将能够创造出功能丰富、用户体验优秀的Android应用。

    Beginning Android 2 .pdf

    - **SDK安装与配置**:为了开始Android 2.x应用开发之旅,首先需要安装Android SDK(Software Development Kit)。本书将指导读者完成SDK的安装,并介绍如何设置开发环境,包括集成开发环境(IDE)的选择与配置。 - **...

    android学习入门资料

    在Android学习的旅程中,初学者常常面临众多资源的选择困境,而"android学习入门资料"这一压缩包似乎提供了史上最全的资源...通过系统学习这些知识点,初学者可以逐步掌握Android开发技能,开启自己的Android开发之旅。

Global site tag (gtag.js) - Google Analytics