`

初识Android

 
阅读更多
    最近接触了Android后,发现它似曾相识,但又有一些新鲜和神奇,今天我把初识Android后通过简单界面开发对它的了解进行了如下总结:
一、项目的创建
一切从头开始,第一步必然是新建了。基本步骤:File-New-(project...)-Android Application project
然后根据提示,对项目中的各种名字、图标进行设置。
当新建一个项目后,打开Eclipse的Package Explorer中的目录,一下子就头大了,一个项目里面包含的目录有那么一大串。一遍遍梳理后,整理出它们各自的用途:
src目录:应用程序源代码
gen目录:存放R文件,该文件是项目创建时自动生成,是只读文件,存储了该项目中的所有资源的索引
Android4.2.2目录:存放Android系统提供的库
assets目录:存放应用中用到的一些媒体文件
bin目录:存放Android应用程序编译后的可执行程序
res目录:资源文件夹,存放图片、页面布局文件、文字信息
AndroidManifest.xml:功能清单文件,该文件列出了应用中所使用的所有组件
二、手机模拟器的创建
所谓手机模拟器,就是手机模型,可以帮助我们测试程序,显示代码执行结果。(最好程序启动后就打开手机模拟器,因为这个手机启动比较慢)
三、Activity
在创建项目的过程中,我们一定已经看到了activity这个词,Activity就是Android应用与用户的接口,从视觉效果来看,一个Activity占据一个窗口界面
四、老生常谈的"Hello World"好像学大多数语言的时候,我们最先接触的都是打印出"Hello World"这句话,而Android比较神奇的地方就是当我们新建一个项目的时候,就已经帮我们处理好了显示这句话的前序。
五、简单登陆界面
界面的实现有两种方式,一个是老老实实地写代码,还有一个就是直接把组件向界面里面拖。为了表示我们是专业的,在这里就多说下第一种方式。
首先设置文本信息,在Android中,所有文本信息都在res目录下的string.xml中。我们通过以下代码先设置界面中用到的文本:
<string name="app_name">myFirstApp</string>
    <string name="action_settings">Settings</string>
    <string name="loginTitle">登陆界面</string>
    <string name="username">用户名</string>
    <string name="password">密码</string>
    <string name="login">登录</string>
    <string name="reset">重置</string>

组件的添加就涉及到了res目录下的Layout。Android中,我们用EditText表示文本输入框,TextView表示标签,Button表示按钮,分别设置这些组件对象的属性后,嵌套地放入布局中即可。代码如下:
<LinearLayout 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical">
        <!-- 登录界面标题 -->
      <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="30sp"
        android:text="@string/loginTitle" />
    
      <!-- 用户名 -->
		    <LinearLayout 
	        android:layout_width="wrap_content"
	        android:layout_height="wrap_content"
	        android:gravity="center"
	        android:orientation="horizontal">
					<TextView
					     android:layout_width="wrap_content"
					     android:layout_height="wrap_content"
					     android:text="@string/username" />
					<EditText 
					  android:layout_width="120dp"
					     android:layout_height="wrap_content"
					     android:id="@+id/edit_username"/>
			</LinearLayout>
		<!-- 密码 -->	
		    <LinearLayout 
	        android:layout_width="wrap_content"
	        android:layout_height="wrap_content"
	        android:orientation="horizontal">
					<!-- 密码 -->
				  <TextView
			        android:layout_width="wrap_content"
			        android:layout_height="wrap_content"
			        android:text="@string/password" />
				  <EditText 
				    android:layout_width="120sp"
			        android:layout_height="wrap_content"
			        android:password="true"
			        android:id="@+id/edit_password"/>
            </LinearLayout>
        <!-- 按钮 -->
         <LinearLayout 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal">
		        <Button 
		            android:layout_width="wrap_content"
		            android:layout_height="wrap_content"
		            android:text="@string/login"
		            android:id="@+id/button_login"/>
		        <Button 
		            android:layout_width="wrap_content"
		            android:layout_height="wrap_content"
		            android:text="@string/reset"
		            android:id="@+id/button_reset"/>
        </LinearLayout>
    </LinearLayout>

需要注意的是在Android中,我们添加的每个组件和布局,都少不了要设置长和宽
六、事件监听机制
功能的实现我们在src中完成,这里已经为我们新建了一个Activity类,我们只需要重写其中的方法onCreate(Bundle bd)即可。这里的参数Bundle表示的是该活动上次的状态。要添加事件监听机制,就要先获得界面中的控件,我们可以通过组件的索引id来得到。给按钮添加监听器的方法,和我们以前学习的方法是一样的,只是函数名变成了setOnClickListener(OnClickListener onClickListener).实现的具体代码如下:
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //通过索引获取按钮
        Button button_login = (Button)findViewById(R.id.button_login);
        Button button_reset = (Button)findViewById(R.id.button_reset);
        //获取文本输入框
        edit_username = (EditText)findViewById(R.id.edit_username);
        edit_password = (EditText)findViewById(R.id.edit_password);
        //向按钮上添加监听器
        button_login.setOnClickListener(onClickListener);
        button_reset.setOnClickListener(onClickListener);
    }

    //实例化监听器
    OnClickListener onClickListener = new OnClickListener(){
		@Override
		public void onClick(View arg0) {
			if(arg0.getId()==R.id.button_login){
				String username = edit_username.getText().toString();
				String password = edit_password.getText().toString();
				System.out.println("输出用户名和密码");
				Toast.makeText(MainActivity.this, "用户名:"+username+"  密码:"+password,5).show();
				Intent intent = new Intent();
				intent.putExtra(username, username);
			}else if(arg0.getId()==R.id.button_reset){
				System.out.println("清空文本框");
				edit_username.setText("");
				edit_password.setText("");
			}
			
		}
    	
    };
分享到:
评论

相关推荐

    栋栋仔Android学习宝典第二章初识Android程序[汇编].pdf

    本书的第二章“初识Android程序”主要涵盖了以下几个关键知识点: 1. **JDK的下载、安装与配置**:JDK(Java Development Kit)是编写Java应用程序的基础,包括了Java编译器、Java运行环境和各种开发工具。在这一...

    Android开发教程_013_初识Android Manifest 标清.flv

    Android开发教程_013_初识Android Manifest 标清

    初识Android-开发环境图文详解PPT

    在Android开发中,构建一个有效的开发环境是至关重要的第一步。本文将通过图文详解的方式带你深入理解Android开发环境的基本构成,并对关键概念如Activity、配置文件、布局文件、常用控件以及Intent进行详细介绍。 ...

    初识Android.bp

    初识Android.bp 前言    最近在捣鼓Android 9 和10的build系统,看到一篇比较好的博客,大名鼎鼎的gityuan的,奉上链接理解Android.bp,为了方便学习和更多的人看到,特意重新编辑以发扬光大使更多人看到。 一....

    Android系统源代码情景分析 / 罗升阳著

     在组织上,《Android系统源代码情景分析(含CD光盘1张)》将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;...

    罗升阳-Android系统源代码情景分析(带书签完整高清版).pdf

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动程序...

    Android系统源代码情景分析 [罗升阳 著] [高清版 带书签 840页]

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动程序...

    Android系统源代码情景分析》光盘内容

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动程序...

    Android系统源代码情景分析 [罗升阳著]

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动程序...

    Android系统源码情景分析

    罗升阳-Android源码情景分析,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了...

    android 情景分析源代码

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动程序...

    Android系统源代码情景分析 【罗升阳】

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇章。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动...

    《Android系统源代码情景分析》 PDF

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇章。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动...

    《Android Telephony原理解析与开发指南》_杨青平

    全书共10章,主要内容包括初识Android、搭建Android源代码编译调试环境、深入解析通话流程、详解Telecom、详解TeleService、Voice Call语音通话模型、ServiceState网络服务、Data Call移动数据业务、SMS & MMS业务...

    Android系统源代码情景分析[罗升阳著]pdf完整清晰版

    , 在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇章。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动...

    Android系统源代码情景分析 PDF 完整版 ZIP.002(二个压缩包)

    在组织上,本书将上述内容划分为初识Android系统、Android专用驱动系统和Android应用程序框架三大篇章。初识Android系统篇介绍了参考书籍、基础知识以及实验环境搭建;Android专用驱动系统篇介绍了Logger日志驱动...

Global site tag (gtag.js) - Google Analytics