现在的位置: 首页 > 移动开发 > 正文

Android UI控制方法

2018年09月19日 移动开发 ⁄ 共 1440字 ⁄ 字号 评论关闭

Android的界面可以通过XML文件和Java代码两种不同的方法进行控制。

完全使用Java代码来控制UI不仅繁琐,而且不利于解耦。

完全使用XML布局文件来控制UI显得方便、便捷,但难免有失灵活。

因此,有些时候就可能需要混合使用XML布局文件和Java代码来控制Android App的UI界面。

习惯上,一般将变化小、行为比较固定的组件放在XML文件中管理,而那些变化较多、行为控制比较复杂的组件则交给Java代码来管理。

实例·【图片浏览器】

布局文件:activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- 定义一个线性布局容器 -->
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/root"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    
</LinearLayout>

源代码:MainActivity.java

package com.zsl.uicontroldemo;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class MainActivity extends Activity {

	int[] images = new int[] {
		R.drawable.jay1,
		R.drawable.jay2,
		R.drawable.jay3,
		R.drawable.jay4,
	};
	
	int curImage = 0;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		LinearLayout main = (LinearLayout)findViewById(R.id.root);
		final ImageView iv = new ImageView(this);
		main.addView(iv);
		iv.setImageResource(images[curImage]);
		iv.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				curImage = (curImage + 1) % images.length;
				iv.setImageResource(images[curImage]);
			}
		});
	}

}

运行截图:

初始界面:                                                       点击图片浏览下一张:                              

      
     

 点击图片浏览下一张:                                     点击图片浏览下一张:

      
   

抱歉!评论已关闭.