这两天在学习Android开发,公司要做一个PDA平台,老总点名要求使用Android开发,杂办呢,哥只会Delphi啊,不会Android开发,怎么办? 学呗。有工资拿,有东西学,多爽啊。

这几天主要成果如下:

1、安装开发环境,java开发环境Eclipse+Android SDK

2、配置Android模拟环境,跟手机应用差不多的,只是相机,GPS,电话功能不能用。安装软件,上网都没有什么问题。

3、依葫芦画瓢地写一个Hello World程序,了解Android Project各个用途和功能。

src是程序的源代码所在目录,gen里R.java包括了整理工程里的各个元素(组件和资源),res里hdpi,ldpi,mdpi分别为图标信息。layout里main.xml是项目主程序的界面设计存储信息,values里的strings.xml存储了各个文字变量资源,这个方便软件的多国语言化。AndroidManifest.xml是工程信息配置,包括所需权限配置,大概就这么多吧。

4、照着教程做了一个小程序,其实就是数学计算,然后根据计算结果进行判断,提示不同的信息。

实例程序下载:HelloAndroid.apk

TheFirstAndroidAPP.jpg

package com.samool.android.hello;

import android.app.Activity;
import android.os.Bundle;
//引用所需要的包
import java.text.DecimalFormat;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.TextView;

public class HelloAndroidActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        //监听事件,先定义一个button实体,继承资源中submit所有
        Button button=(Button)findViewById(R.id.submit);
       //定义按钮的点击监听事件为calcBMI监听器
        button.setOnClickListener(calcBMI);
    }
   
    //定义一个私有监听器 calcBMI
private OnClickListener calcBMI = new OnClickListener()
    {
     //定义点击事件
     public void onClick(View v)
     {
      DecimalFormat nf = new DecimalFormat("0.00");   //定义一个格式化变量
      EditText fieldheight = (EditText)findViewById(R.id.height);   //获取文本框实体信息
      EditText fieldweight = (EditText)findViewById(R.id.weight);
      double height = Double.parseDouble(fieldheight.getText().toString())/100;   //进行数学运算
      double weight = Double.parseDouble(fieldweight.getText().toString());
      double BMI = weight / (height*height);
      
      TextView result = (TextView)findViewById(R.id.result);   //显示结果值
      result.setText("Your BMI is"+nf.format(BMI));
      
      TextView fieldsuggest = (TextView)findViewById(R.id.suggest);
      if (BMI>25)   //对结果进行条件判断,显示不同的值
      {
       fieldsuggest.setText(R.string.advice_heavy);
      }
      else if (BMI<20)
      {
       fieldsuggest.setText(R.string.advice_light);
      }
      else
      {
       fieldsuggest.setText(R.string.advice_average);
      }      
      
     }
    };
   
}

学习总结:整个程序编写跟Delphi其实差不多,即为RAD编程方式,先布局界面,然后设置元素属性,再编写代码,不过要自己定义操作,自定义事件监听,操作操作函数与事件监听进行绑定。不能直接引用界面上的元素,要先定义一个与界面元素相同的实体,通过R.java里的元素名称用FindViewById进行继承方法和属性,然后再对自定义的实体进行操作,从而达到操作界面上的元素。

最后修改:2011 年 06 月 16 日
卧槽,全是白嫖客,服务器不要钱吗?