Android 使用xml和java混合编写ui

以一个简单的图片浏览器实例说明


新建工程后:

    在activit_main.xml中添加代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
</LinearLayout>

在java中添加代码:

public class MainActivity extends Activity {

	int[] image = new int[] {
			R.drawable.p1,
			R.drawable.p2,
			R.drawable.p3,
			R.drawable.p4
	};
	ImageView myimage;
	int curImage = 0;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		LinearLayout layout = (LinearLayout)this.findViewById(R.id.main);
		myimage = new ImageView(this);
		layout.addView(myimage);
		myimage.setImageResource(image[0]);
		myimage.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				myimage.setImageResource(image[++curImage%image.length]);
			}
			
		});
	}


在Android中,每一个组件的性质可以在.xml中定义,同时每个性质都有对应的java方法

注意:以上代码中 使用java代码添加新的组件,可把声明写在类中,但是他必须被赋值为一个new在onCreate()内部的对象,否则程序会出错,究其原因是因为在java中添加组件的时候必须初始化的时候加入参数(this)



本文出自 “无用大叔” 博客,请务必保留此出处http://aslonely.blog.51cto.com/6552465/1637277

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。