【Android开发】范例3-我同意游戏条款

2024-03-27 08:20

本文主要是介绍【Android开发】范例3-我同意游戏条款,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实现游戏开始界面中的我同意游戏条款功能:不勾选“我同意”复选框,就不会出现“开始游戏”的按钮,勾选“我同意”复选框,出现“开始游戏”的按钮。

效果图如图:

未点击"我同意"之前


点击“我同意”之后


点击"开始"按钮的瞬间的效果:



具体实现代码:
res/layout/main.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="vertical"android:gravity="center"android:screenOrientation="landscape" android:background="@drawable/background"><!-- 显示游戏条款的TextView --><TextView android:text="@string/artcle"android:id="@+id/textview1"android:paddingTop="40px"android:layout_width="wrap_content"android:layout_height="wrap_content"android:maxWidth="700px"style="@style/text"/><!-- "我同意"复选框 --><CheckBox android:text="我同意"android:id="@+id/checkBox1"android:textSize="22px"android:layout_width="wrap_content"android:layout_height="wrap_content"/><!-- 图片按钮 visibility="invisible"设置按钮不可见--><ImageButton android:id="@+id/start"android:background="#0000"android:paddingTop="30px"android:src="@drawable/button_state"android:visibility="invisible"android:layout_width="wrap_content"android:layout_height="wrap_content"/> 
</LinearLayout>

res/drawable/button_state.xml
用于设置鼠标按下时显示的图片和鼠标没有按下时的图片:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" ><item android:state_pressed="true" android:drawable="@drawable/stop"/><item android:state_pressed="false" android:drawable="@drawable/in"/>
</selector>

res/value/strings.xml:(在Android中,空格使用“&#160;”表示)
<?xml version="1.0" encoding="utf-8"?>
<resources><string name="app_name">test3.1</string><string name="hello_world">Hello world!</string><string name="action_settings">Settings</string><string name="artcle">      注册及使用账号,不得有下列情形:4.6.1	违反宪法或法律法规规定的;4.6.2	散布谣言,扰乱社会秩序,破坏社会稳定的;4.6.3	散布淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪的;4.6.4	侮辱或者诽谤他人,侵害他人合法权益的;4.6.5	含有法律、行政法规禁止的其他内容的。</string></resources>

res/value/styles.xml:
<resources xmlns:android="http://schemas.android.com/apk/res/android"><style name="text"><item name="android:textSize">24px</item><item name="android:textColor">#FFFFFF</item></style><style name="AppBaseTheme" parent="android:Theme.Light"> </style><style name="AppTheme" parent="AppBaseTheme"></style>
</resources>

在主活动的onCreat()方法中,获取布局文件中添加的"进入"图片按钮和"我同意"复选框,并为复选框添加状态改变监听器,用于实现当复选框被选中时显示“进入”按钮,否则不显示。具体代码如下:

package com.example.test;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageButton;
import android.widget.Toast;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);final ImageButton imageButton=(ImageButton)findViewById(R.id.start);//获取"进入"按钮CheckBox checkbox=(CheckBox)findViewById(R.id.checkBox1);//获取复选框//为复选框添加监听器checkbox.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {if(isChecked){//当复选框被选中时imageButton.setVisibility(View.VISIBLE);//设置"进入"按钮显示}else{imageButton.setVisibility(View.INVISIBLE);//设置"进入"按钮不显示}imageButton.invalidate();//重绘ImageButton}});//点击按钮出现"进入游戏...."提示信息imageButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {//显示消息提示框 Toast.makeText(MainActivity.this, "进入游戏...",Toast.LENGTH_SHORT).show();}});}
}

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

这篇关于【Android开发】范例3-我同意游戏条款的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/851492

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

游戏闪退弹窗提示找不到storm.dll文件怎么办? Stormdll文件损坏修复技巧

《游戏闪退弹窗提示找不到storm.dll文件怎么办?Stormdll文件损坏修复技巧》DLL文件丢失或损坏会导致软件无法正常运行,例如我们在电脑上运行软件或游戏时会得到以下提示:storm.dll... 很多玩家在打开游戏时,突然弹出“找不到storm.dll文件”的提示框,随后游戏直接闪退,这通常是由于

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF