【Android开发】用户界面设计-在代码中控制UI界面

2023-10-26

效果图:



实现方法:

MainActivity:

package com.example.test;


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


public class MainActivity extends Activity {
     public TextView text2;
     
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		//使用代码布局就不用设置下面这句
		//setContentView(R.layout.main);
		
		FrameLayout frameLayout=new FrameLayout(this);//创建帧布局管理器
		//设置背景
		frameLayout.setBackgroundDrawable(this.getResources().getDrawable(R.drawable.backgroud));
		//设置在Activity中显示frameLayout
		setContentView(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);//将text1添加到布局管理器中
		
	    text2=new TextView(this);
		text2.setText("单击进入游戏");//设置显示文字
		text2.setTextSize(TypedValue.COMPLEX_UNIT_PX,24);//设置文字大小,单位为像素
		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.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
			    new AlertDialog.Builder(MainActivity.this).setTitle("系统提示")//设置对话框的标题
				                            .setMessage("游戏有风险,进入需谨慎,真的要进入吗?")
				                            .setPositiveButton("确定",    //为确定按钮添加单击事件
				                            new DialogInterface.OnClickListener() {
						    @Override
						    public void onClick(DialogInterface dialog, int which) {
								 Log.i("3.2", "进入游戏");//输出消息日志
						    }
						}).setNegativeButton("退出",
							    new DialogInterface.OnClickListener() {
								@Override
						public void onClick(DialogInterface dialog, int which) {
		                                                Log.i("3.2", "退出游戏");//输出消息日志
							        finish();
		                                    }
						}).show();
			}
		});
		frameLayout.addView(text2);
	}
}

main.xml设置frameLayout布局就可以了

转载请注明出处:http://blog.csdn.net/acmman/article/details/44726329

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Android开发】用户界面设计-在代码中控制UI界面 的相关文章

  • Java:记录一下第一次面试经历(新希望六和)

    记录一下本菜鸡两个月前第一次面试新希望六合这家公司 那时的我很多都回答不上来 非常尴尬 不过这第一次面试经历也算是给足了我动力继续努力 记录一下这个第一次面试的题目 也算是记录一下那时候的我 做过什么样的项目 简单介绍一下你的项目 项目的整

随机推荐

  • 客户端请求的端口号是什么?

    我们知道服务器端是要指定和开放端口号的 比如 web 服务 http 请求的 80 https 的 443 端口 都要开放 否则无法请求成功 我们知道通信是由两端组成的 既然服务器需要指定端口 那么客户端呢 比方说我用 chrome 浏览器
  • 模型微调技术

    模型微调 一 迁移学习中的常见技巧 微调 fine tuning 1 1 概念 1 2 步骤 1 3 训练 1 4 实现 一 迁移学习中的常见技巧 微调 fine tuning 1 1 概念 将在大数据集上训练得到的weights作为特定任
  • java常用第三方类库

    几乎每个程序员都知道要 避免重复发明轮子 的道理 尽可能使用那些优秀的第三方框架或库 但当真正进入开发 时 我却经常发现他们有时并不知道那些轮子在哪里 最近 我在业余时间带几个年轻的程序员一起做了一个很小的商业项目 而在一起开发的过程中 我
  • Java使用Collections.reverse()反转一个List

    public class Demo public static void main String args ArrayList
  • 2023年CPU&GPU天梯图(最新版)

    在当今计算机世界 CPU GPU和显卡的性能成为了衡量计算机性能的重要指标 今天深入了解CPU GPU和显卡天梯图 首先 CPU作为计算机的大脑 负责处理各种任务 它的性能主要由核心数 主频和缓存大小决定 其中 核心数和主频决定了CPU的处
  • 我的2016--"狗血"

    偶然看到了CSDN的 我的2016 主题征文活动 突然感慨一番 今年又快结束了 而我这一年的经历 可以浓缩为两个字 狗血 然而 我能用上如此不羁的词汇 并未能掩盖我木讷的内心 这才真的是狗血 感觉像在梦游 走了好远的路 一睁开眼睛却还在原地
  • Qt5和Qt6在线安装的问题

    在线安装我的梯子怎么都安装不快 如果只是时间长也行啊 但是经常蹦出来一个 下载xxx无响应 你还得去盯着它 不然就给你自动退出了 着实有些烦人 得下载14个小时 有一个方法是更换镜像源 也就是 在cmd命令行如下执行 qt unified
  • 第一个CUDA程序-addVector

    本文主要通过对两个浮点数组中的数据进行相加 并将其结果放入第三个数组中 其算法分别在CPU GPU上分别执行 并比较了所需时间 强烈感受到GPU的并行计算能力 这里 每个数组的元素大小为30000000个 一 实现代码 cpp view p
  • 对比学习simSiam(一)--Exploring Simple Siamese Representation Learning总体理解

    1 从名字上把握 sim是我们熟知的相似的那个单词 这个Siam是孪生的意思 这里使用这个来命名应该是为了指出孪生的重要性 这里的核心其实是在提出一个思想 对比学习这种由孪生网络结构构成的无监督学习的关键其实是孪生网络 两个网络有其中一方停
  • PyQt入门(8)-常用控件(下)

    目录 1 QListWidget 2 QTreeWidget 3 QTableWidget 1 QListWidget QListWidget是一个QListView的便捷类 提供一个列表视图 大数据量的情况下QListView确实更加灵活
  • Java 第一个程序 HelloWorld

    目录 1 常用 DOS 命令 2 Path 环境变量的配置 3 HelloWorld 编写和执行 4 HelloWorld 详解 1 常用 DOS 命令 在接触集成开发环境之前 我们需要使用命令行窗口对 Java 程序进行编译和运行 所以需
  • LeetCode每日一题2021.11.21—12.01

    2021 11 21 559 N叉树的最大深度 题目 思路 深度遍历 广度优先遍历 每次出队要把队列所有的元素拿出来 代码 Definition for a Node class Node public int val vector
  • 常用的C语言学习网站

    1 C语言网 C语言网 www dotcpp com 不仅提供C语言 还包括C java 算法与数据结构等课程在内的各种入门教程 视频录像 编程经验 编译器教程及软件下载 题解博客 源码分享等优质资源 提倡边学边练边分享 同时提供对口的IT
  • windows 通过ssh连接到Linux主机

    windows 通过ssh连接到Linux主机 文章目录 windows 通过ssh连接到Linux主机 1 ssh的认识 2 ssh的安全验证 3 连接方法 4 windows 通过ssh连接到Linux主机 1 ssh的认识 SSH 为
  • pixelBook2017原系统ChromeOS改windows

    部分内容引用于CSDN博主 行走的病毒 的原创文章 遵循CC 4 0 BY SA版权协议 转载请附上原文出处链接及本声明 原文链接 https blog csdn net DZTlaila article details 103843172
  • redis

    django redis 使用 结合 django redis 配置 django settings CACHES default BACKEND django redis cache RedisCache LOCATION redis 1
  • 手机连不上 mac 的解决办法

    原文地址 http mobile 51cto com aprogram 386942 htm http www miui com thread 1413676 1 1 html 小米2及其他Android手机无法连接mac解决方案 2013
  • Intellij IDEA运行报Command line is too long解法

    报错内容 Error running ServiceStarter Command line is too long Shorten command line for ServiceStarter or also for Applicati
  • 向女性程序员致敬!

    今天是3月8日 国际妇女节 先祝我娘节日快乐 再祝广大女性们节日快乐 这里特别祝福一下程序媛们 你们冒着脱发 单身 没周末 xxxxxx等各种高风险在互联网事业中与程序猿们同甘共苦 一起撑起了互联网的半边天 而且听闻历史上第一位程序员也是女
  • 【Android开发】用户界面设计-在代码中控制UI界面

    效果图 实现方法 MainActivity package com example test import android app ActionBar LayoutParams import android app Activity imp