res/layout/hello_world.xml文件,这是一个xml格式的文件,该文件直接控制了用户页面的显示内容,其中<RelativeLayout ...></RelativeLayout>是整个的一个相对布局管理器,<TextView .../>是一个TextView的属性设置和文本显示,<Button .../>是按键的属性设置和文本显示。可以把RelativeLayout看成是个手机屏幕,屏幕上有TextView和Button,并且各自有自己的相应的设置
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<TextView
android:id="@+id/show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_alignParentTop="true"
android:text="@string/hello_world" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/show"
android:text="@string/btn"
android:onClick="clickHandler" />
</RelativeLayout>
src/org.crayzit.helloworld/HelloWorld.java文件,是一个java源文件,文件中有用户页面的显示和单击事件的处理
package org.crazyit.helloworld;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public class HelloWorldActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
//super.onCreate(savedInstanceState)就是调用父类的onCreate构造函数
//savedInstanceState是保存当前Activity的状态信息
super.onCreate(savedInstanceState);
//显示res/layout下的布局文件(hello_world.xml)定义的视图
//R.layout.hello_world是view类的对象
setContentView(R.layout.hello_world);
}
//这个类注掉不影响程序的运行
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.hello_world, menu);
return true;
}
public void clickHandler(View source){
//findViewById(R.id.属性值)该方法能够获取布局文件(hello_world.xml)中某个指定的UI组件
TextView tv=(TextView) findViewById(R.id.show);
//这句代码能够改变布局文件(hello_world.xml)里文本框中的显示
tv.setText("Hello Android-"+new java.util.Date());
}
}
对于Android的编程,主要针对于上面的两个部分