Android 项目建立步骤

使用eclipse,进行安卓开发,在建立项目的时候,有些步骤必须注意的,

本文就是对使用eclipse进行android开发的简单说明:

 

一、模拟器配置设定

使用eclipse开发安卓,需要用到android sdk的avd模拟器,在eclipse中能打开这个模拟器,但是由于与eclipse绑定的,

打开以后,难免会影响到eclipse的使用,其实,模拟器是可以单独打开的,并且eclipse调试运行的时候,也能连接到模拟器。

博主推荐的做法是使用命令指令打开avd,

首先,需要配置环境变量,

(1)windows系统

  我的电脑=>右键属性=>高级系统设置=>环境变量=>在下方的变量中双击Path=>在末端加入 ;...\android-sdk\tools

  注意,加入的内容是emulator所在的目录(“...”表示android-sdk前的目录路径,不要直接写...),另外,Path环境变量中必须使用";"隔开各个路径

(2)ubuntu系统

  打开终端=>gedit ~/.bashrc=>在文本下方的Path路径中,同样加入 :...\android-sdk\tools

  注意,加入的内容是emulator所在的目录(“...”表示android-sdk前的目录路径,不要直接写...),另外,Path环境变量中必须使用":"隔开各个路径,ubuntu的分隔符是":"

 

配置环境变量后,打开cmd(ubuntu则是终端),输入emulator -avd a19,注意a19是博主的模拟机名称,即为android 19,稍等一会,模拟机就会运行了。(前提是必须已经创建模拟机)。

运行了模拟机的意思就是,你的手机已经连接上了电脑,当在eclipse中点击“run”的时候,eclipse会驱动模拟机运行编写的程序。

使用命令打开模拟器,如果关闭cmd(终端),模拟器马上终止运行。

 

二、创建android项目

在eclipse的菜单中,File=>New=>Other...,弹出窗口中选中Android=>Android Application Project

Application Name:项目名,开头字母必须大写

Package Name:前两段相当于空间名,第三段默认就可以了

Minimum Required SDK:最低版本要求,必须大于4.0,因为4.0以下的系统界面文件有缺失,并且没有必要开发4.0以下的程序了

后面的参照图片中的选项就可以了。

接着一路“Next”,最后“Finish”

 

三、项目文件初识

这是博主做的一个测试项目,用于测试 Android连接SQL Server

src:包含程序代码,里面放了包、类等等

Android Private Libraries:包含导入的第三方jar文件

bin:编译后的文件,有可以直接安装运行的apk文件

libs:放置第三方jar文件的目录

res:界面文件、数据文件等等

    =>layout:包含界面的布局、控件的布局文件

    =>values:存放着程序用的部分数据,常用的是strings.xml,里面有控件的Text属性内容

AndroidManifest.xml:配置文件,这个文件必须注意,在使用与网络相关的功能时,必须在里面打开网络权限

    方法:右键AndroidManifest.xml=>Open With=>Text Editor

1 . . . . . . 
2 android:versionCode="1"
3 android:versionName="1.0" >
4 
5 <uses-permission android:name="android.permission.INTERNET" />
6 
7 <uses-sdk
8 android:minSdkVersion="14"
9 . . . . . .

      务必记得插入<uses-permission android:name="android.permission.INTERNET" />,这是新手最常忘记的操作。

 

四、基本操作

例:新建一个名为AndroidTest的项目

1、新建项目后,首先看看res->values->strings.xml文件,Open With TextEditor打开

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <resources>
 3 
 4     <string name="app_name">AndroidTest</string>
 5     <string name="hello_world">Hello world!</string>
 6     <string name="action_settings">Settings</string>
 7     <string name="btnHello">Say Hello</string>
 8     <string name="btnClear">Clear</string>
 9 
10 </resources>

第7和第8行是博主追加的,用于显示在后续步骤创建的button显示文本。

 

2、打开res->layout->activity_main.xml,看到程序的界面

从界面左侧的Palette栏中拖入2个Button

点击下方的activity_main.xml。

修改打开的xml文本如下:

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:paddingBottom="@dimen/activity_vertical_margin"
 6     android:paddingLeft="@dimen/activity_horizontal_margin"
 7     android:paddingRight="@dimen/activity_horizontal_margin"
 8     android:paddingTop="@dimen/activity_vertical_margin"
 9     tools:context="com.test.androidtest.MainActivity" >
10 
11     <TextView
12         android:id="@+id/tv"
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:text="@string/hello_world" />
16 
17     <Button
18         android:id="@+id/btnHello"
19         android:layout_width="wrap_content"
20         android:layout_height="wrap_content"
21         android:layout_marginStart="10dp"
22         android:layout_marginLeft="10dp"
23         android:layout_marginTop="50dp"
24         android:text="@string/btnHello" />
25 
26     <Button
27         android:id="@+id/btnClear"
28         android:layout_width="wrap_content"
29         android:layout_height="wrap_content"
30         android:layout_marginStart="150dp"
31         android:layout_marginLeft="150dp"
32         android:layout_marginTop="50dp"
33         android:text="@string/btnClear" />
34 
35 </RelativeLayout>

注:layout_marginStart="XXdp"必须加上,并且值要与marginLeft相同,否则在手机上运行时,x坐标会有问题

  text="@string/btnHello"中的btnHello就是在上一步编写strings.xml所设定的值,将显示在按钮上。

 

3、打开src->com.test.androidtest->MainActivity.java

这就是主程序的代码,(也就是C#中winform的Main方法入口的窗体代码)

  1 package com.test.androidtest;
  2 
  3 import android.app.Activity;
  4 import android.os.Bundle;
  5 import android.view.Menu;
  6 import android.view.MenuItem;
  7 import android.view.View;
  8 import android.view.View.OnClickListener;
  9 import android.widget.Button;
 10 import android.widget.TextView;
 11 import android.widget.Toast;
 12 
 13 public class MainActivity extends Activity {
 14 
 15     // 定义控件和变量
 16     private TextView tv;
 17     private Button btnHello;
 18     private Button btnClear;
 19     private String strHello = "hello Android!";
 20 
 21     // 初始化方法
 22     @Override
 23     protected void onCreate(Bundle savedInstanceState) {
 24         super.onCreate(savedInstanceState);
 25         setContentView(R.layout.activity_main);
 26 
 27         // 通过id,找到控件,并从控件的父类(View类)转类型为相应的类形
 28         tv = (TextView) findViewById(R.id.tv);
 29         btnHello = (Button) findViewById(R.id.btnHello);
 30         btnClear = (Button) findViewById(R.id.btnClear);
 31 
 32         // 设定按钮的click动作监视,有click动作触发时,执行方法clickEvent()
 33         btnHello.setOnClickListener(clickEvent());
 34         btnClear.setOnClickListener(clickEvent());
 35     }
 36 
 37     // 定义clickEvent()方法
 38     private OnClickListener clickEvent() {
 39         // TODO Auto-generated method stub
 40         // 返回一个OnClickListener结果
 41         return new OnClickListener() {
 42 
 43             // 方法体,参数view指触发事件的控件本身
 44             @Override
 45             public void onClick(View view) {
 46                 // TODO Auto-generated method stub
 47                 // 判断click动作触发的控件是哪个button
 48                 if (view == btnHello) {
 49                     // 参数view,是传递触发的button控件
 50                     sayHello(view);
 51                 } else if (view == btnClear) {
 52                     clearTv(view);
 53                 } else {
 54                     // 其它的按钮可继续添加
 55                 }
 56             }
 57         };
 58     }
 59 
 60     // btnHello的click方法,参数view是触发的按钮本身
 61     private void sayHello(View view) {
 62         // 设定TextView的内容
 63         tv.setText(strHello);
 64         // 转view的类型为Button
 65         Button btn = (Button) view;
 66         // 提示信息
 67         String tips = "你按下了" + btn.getText();
 68         // 气泡显示提示信息
 69         Toast.makeText(getApplicationContext(), tips, Toast.LENGTH_SHORT).show();
 70     }
 71 
 72     // btnClear的click方法,参数view是触发的按钮本身
 73     private void clearTv(View view) {
 74         tv.setText("");
 75         Button btn = (Button) view;
 76         String tips = "你按下了" + btn.getText();
 77         Toast.makeText(getApplicationContext(), tips, Toast.LENGTH_SHORT).show();
 78     }
 79 
 80     // 暂时不需要理会
 81     @Override
 82     public boolean onCreateOptionsMenu(Menu menu) {
 83         // Inflate the menu; this adds items to the action bar if it is present.
 84         getMenuInflater().inflate(R.menu.main, menu);
 85         return true;
 86     }
 87 
 88     // 暂时不需要理会
 89     @Override
 90     public boolean onOptionsItemSelected(MenuItem item) {
 91         // Handle action bar item clicks here. The action bar will
 92         // automatically handle clicks on the Home/Up button, so long
 93         // as you specify a parent activity in AndroidManifest.xml.
 94         int id = item.getItemId();
 95         if (id == R.id.action_settings) {
 96             return true;
 97         }
 98         return super.onOptionsItemSelected(item);
 99     }
100 }

实现的功能就是程序初始化是有1个TextView(内容是hello world),2个Button

点击按钮Say Hello时,TextView内容变为hello Android,同时弹出气泡提示,用户按了哪个按键

点击按钮Clear时,TextView内容变为空,同时弹出气泡提示,用户按了哪个按键

 

效果如下:

   

 

结束...

 

posted @ 2016-07-26 14:05  chenyucong  阅读(4376)  评论(0编辑  收藏  举报