Android——控制UI界面

一、使用XML布局文件控制UI界面

res\layout\activity_main.xml代码如下:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/FrameLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background">
<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
	android:text="@string/title"
	style="@style/text"
    >
</TextView>
<TextView
    android:id="@+id/startButton"
	android:layout_gravity="center_vertical|center_horizontal"
	android:text="@string/start"
	android:layout_width="wrap_content"
	android:layout_height="wrap_content"
	style="@style/text"
    >

</TextView>
</FrameLayout>

一个TextView组件用于显示提示文字,一个在窗体正中间显示开始游戏按钮

其中res\values\styles.xml代码如下

<resources xmlns:android="http://schemas.android.com/apk/res/android">
	<style name="text">
	    <item name="android:textSize">24dp</item>
	    <item name="android:textColor">#111111</item>
	</style>
</resources>

用于指定应用的样式,指定文字的大小和颜色。

最后在主活动中也就是MainActivity中,应用一下代码指定应用的布局文件。

setContentView(R.layout.activity_main);

二、用代码来控制UI界面

package com.basil_lee.ui;

import android.os.Bundle;
import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.graphics.Color;
import android.util.TypedValue;
import android.view.Gravity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		//setContentView(R.layout.activity_main);
		FrameLayout frameLayout=new FrameLayout(this);//创建帧布局管理器
		frameLayout.setBackgroundDrawable(this.getResources().getDrawable(R.drawable.background));//设置背景图片
		setContentView(frameLayout);//设置在Activity中显示frameLayout
		//创建一个TextView组件
		TextView text1=new TextView(this);
		text1.setText("在代码中控制UI界面");
		text1.setTextSize(TypedValue.COMPLEX_UNIT_PX,24);//设置文字的大小,单位为像素
		text1.setTextColor(Color.rgb(1, 1, 1));
		frameLayout.addView(text1);
		//创建另外一个TextView组件
		TextView text2=new TextView(this);
		text2.setText("单击进入游戏。。。。。。");
		text2.setTextSize(TypedValue.COMPLEX_UNIT_PX,50);//设置文字的大小,单位为像素
		text2.setTextColor(Color.rgb(1, 1, 1));
		LayoutParams params=new LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
				ViewGroup.LayoutParams.WRAP_CONTENT);//创建保存布局参数的对象
		params.gravity=Gravity.CENTER_HORIZONTAL|Gravity.CENTER_VERTICAL;
		text2.setLayoutParams(params);
		//为text2组件添加单击事件,并将组件添加到布局管理器中
		text2.setOnClickListener(new OnClickListener() {
			public void onClick(View arg0) {
				new AlertDialog.Builder(MainActivity.this).setTitle("系统提示")
					.setMessage("游戏有风险,进入需谨慎,真的要进入吗?")
					.setPositiveButton("确定", new DialogInterface.OnClickListener() {
						public void onClick(DialogInterface arg0, int arg1) {
							Toast.makeText(MainActivity.this, "进入游戏", Toast.LENGTH_LONG).show();
						}
					}).setNegativeButton("退出",new DialogInterface.OnClickListener() {
						public void onClick(DialogInterface arg0, int arg1) {
							Toast.makeText(MainActivity.this, "退出游戏", Toast.LENGTH_LONG).show();
							finish();
						}
					}).show();
			}
		});

	   frameLayout.addView(text2);
	}

}

后面继续更新。。。。。

时间: 11-07

Android——控制UI界面的相关文章

Android有感(9):10.使用XML文件和Java代码控制UI界面

Android推荐使用XML文件设置UI界面,然后用Java代码控制逻辑部分,这体现了MVC思想. MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑. 我们可以在app\src\main\res\layout目录下定义一个XML文件(R.java文件会自

Android Interface(UI) 界面控件简单介绍01

1.TextView:显示文本 常用的属性设置:android:textIsSelectable="true" 设置文本内容可选(触发系统的复制粘贴功能)android:drawableLeft="@mipmap/ic_launcher" 设置文本内容的图标其它包括drawableRight, drawableTop, drawableBottom, drawableStart, drawableEndandroid:text="Hello World!&

使用xml和java代码混合控制UI界面

main.xml.................... <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     android:orientation="horizontal"     android:layout_width=&qu

WASD控制UI界面血条加减

using UnityEngine; using System.Collections; using UnityEngine.UI; public class HealthController : MonoBehaviour { //当前对象是血条还是蓝条 public bool isHealth = false; //虚拟轴,横轴,纵轴 private float hor,ver; //血条的最大宽度 private float healthMaxWidth = 470; //蓝条的最大宽度

Android更新Ui的几种方法和见解

<代码里的世界> 用文字札记描绘自己 android学习之路 转载请保留出处 by Qiao http://blog.csdn.net/qiaoidea/article/details/45115047 1. 简述 先贴一个我们刚做Android开发时候最容易遇到的一个错误异常 AndroidRuntimeException :"Only the original thread that created a view hierarchy can touch its views&quo

Android开发1:基本UI界面设计——布局和组件

前言 啦啦啦~本学期要开始学习Android开发啦~ 博主在开始学习前是完完全全的小白,只有在平时完成老师要求的实验的过程中一步一步学习~从此篇博文起,博主将开始发布Android开发有关的博文,希望能在学习中和各位共同探讨,一起交流,共同进步~ 话不多说,首先进入我们的正题~Android开发一基本UI界面设计——布局和组件(Android Studio的配置安装使用等在以后为各位补上~) 基础知识 Android的组件分为布局和控件.布局,就是让控件在里面按一定的次序排列好的一种组件,本身并

Android之十二微信UI界面设计

Android之十二微信UI界面设计 corners_bg.xml <span style="font-size:14px;"><?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color=&qu

android中实现service动态更新UI界面

案例:通过service向远程服务器发送请求,根据服务器返回的结果动态更新主程序UI界面,主程序可实时关闭或重启服务. 注册BroadcastReceiver 在主程序activity中注册一个BroadcastReceiver,用于接收Service发布的广播. @Override protected void onStart() {//重写onStart方法 dataReceiver = new DataReceiver(); IntentFilter filter = new Intent

Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面

Android应用的开发过程中需要把繁重的任务(IO,网络连接等)放到其他线程中异步执行,达到不阻塞UI的效果. 下面将由浅入深介绍Android进行异步处理的实现方法和系统底层的实现原理. 本文介绍Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面: 即如何使用Thread+Handler的方式从非UI线程发送界面更新消息到UI线程. 概述:每个Android应用程序都运行在一个dalvik虚拟机进程中,进程开始的时候会启动一个主线程(MainThread),