Android第五六周作业
1.返回键实现对话框弹出是否退出应用程序
package com.example.zuoye1; import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity; import android.annotation.SuppressLint;
import android.content.DialogInterface;
import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} @Override
public void onBackPressed(){
//声明对象
AlertDialog dialog;
AlertDialog.Builder builder=new AlertDialog.Builder(this)
.setTitle("普通对话框")//设置对话框的标题
.setIcon(R.mipmap.ic_launcher)//设置设置标题图标
.setMessage("是否确定退出应用:")//设置对话框的提示信息
//添加‘确定’按钮
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();//关闭对话框
MainActivity.this.finish();//关闭MainActivity
}
})//添加“取消”按钮
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
dialog =builder.create();
dialog.show(); }
}

2.实现以下场景:从一个activity中点击一个按钮后,弹出一个单选按钮对话框,上面有“男”“女”两个选项,选定后,TOAST弹出 你选择了男,或你选择了女(参考书上改字体)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:ignore="MissingConstraints"
> <TextView
android:id="@+id/v1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="请选择性别:"
android:layout_marginTop="10dp"
android:textSize="20sp"
android:textColor="#FFC0CB"/> <Button
android:id="@+id/v2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择性别"
android:layout_marginTop="20dp"
android:layout_gravity="center" /> </LinearLayout>
package com.example.zuoye; import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity; import android.content.DialogInterface;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView; public class MainActivity extends AppCompatActivity implements View.OnClickListener{
private TextView textView;
private int[] textSizeArr = {10,20};
int textSize =1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//设置Button监听事件
findViewById(R.id.v2).setOnClickListener(this);
textView=(TextView) findViewById(R.id.v1);
}
@Override
public void onClick(View v){
AlertDialog dialog;
AlertDialog.Builder builder=new AlertDialog.Builder(this)
.setTitle("设置字体大小")//设置标题
.setIcon(R.mipmap.ic_launcher)
.setSingleChoiceItems(new String[]{"男","女"},textSize,new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog,int which){
textSize =which;
}
})
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//为textview设置在单选对话框中选择的字体大小
textView.setTextSize(textSizeArr[textSize]);
dialog.dismiss();//关闭对话框
}
})//添加“确定”按钮
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
dialog=builder.create();
dialog.show();
}
}

3.布局(详见:Android第五周上机word文档)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ADD8E6"
android:layout_margin="2dp"
tools:context=".MainActivity">
<TextView
android:id="@+id/v1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="1.TextView显示文本信息"
android:textSize="30sp"
android:textColor="#9370DB"
android:textStyle="bold"
android:gravity="center"
android:layout_marginTop="10dp"
/>
<Button
android:id="@+id/v2"
android:layout_width="340dp"
android:layout_height="wrap_content"
android:text="2.按钮"
android:textSize="20sp"
android:textColor="#9370DB"
android:textStyle="bold"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_below="@+id/v1"
/>
<EditText
android:id="@+id/v3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="3.编辑框:请输入信息"
android:textSize="20sp"
android:textColorHint="#9370DB"
android:layout_below="@id/v2"
android:layout_alignStart="@id/v2"
android:layout_margin="5dp"
/>
<RadioGroup
android:id="@+id/v4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_below="@id/v3"
android:layout_alignLeft="@id/v3"
>
<RadioButton
android:id="@+id/v5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4.男"
android:textColor="#9370DB"
android:textSize="20sp"
android:textStyle="bold"
/>
<RadioButton
android:id="@+id/v6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女"
android:textColor="#9370DB"
android:textSize="20sp"
android:textStyle="bold"
/>
</RadioGroup>
<LinearLayout
android:id="@+id/v7"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_below="@id/v4"
android:layout_alignLeft="@id/v4">
<CheckBox
android:id="@+id/v8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="电脑"
android:textSize="20sp"
/>
<CheckBox
android:id="@+id/v9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="手机"
android:textSize="20sp"/>
</LinearLayout>
</RelativeLayout>

4.教材p76页 图3—17购物商城界面
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity"> <TextView
android:layout_width="match_parent"
android:layout_height="45dp"
android:text="购物商城"
android:textSize="18sp"
android:textColor="#87CEEB"
android:background="#FFC0CB"
android:gravity="center"
/> <ListView
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"> <ImageView
android:id="@+id/iv"
android:layout_width="120dp"
android:layout_height="90dp"
android:layout_centerVertical="true"/> <RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/iv"
android:layout_centerVertical="true"> <TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="桌子"
android:textSize="20sp"
android:textColor="#000000"/> <TextView
android:id="@+id/tv_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="价格"
android:textSize="20sp"
android:layout_marginTop="10dp"
android:layout_below="@+id/title"
android:textColor="#DDA0DD"/> <TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1000"
android:textSize="20sp"
android:layout_below="@+id/title"
android:layout_toRightOf="@+id/tv_price"
android:textColor="#DDA0DD"
android:layout_marginTop="10dp"/> </RelativeLayout>
</RelativeLayout>
package com.example.cnitcastlistview; import androidx.appcompat.app.AppCompatActivity; import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView; public class MainActivity extends Activity {
private ListView mListView;
//商品名称与价格数据集合
public String[] titles ={"桌子","苹果","蛋糕","毛衣"};
private String[] prices ={"1800元","10元/kg","300元","350元"};
//图片数据集合
private int [] icons ={R.drawable.table,R.drawable.apple,R.drawable.cake,R.drawable.wireclotes};
@SuppressLint("WrongViewCast")
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListView =(ListView) findViewById(R.id.iv);//初始化ListView控件
MyBaseAdapter mAdapter =new MyBaseAdapter();//创建一个Adapter实例
mListView.setAdapter(mAdapter);//设置Adapter
}
class MyBaseAdapter extends BaseAdapter{ @Override
public int getCount() {//获取item的总数
return titles.length;//返回ListView Item条目的总数
} @Override
public Object getItem(int position) {
return titles[position];//返回Item的数据对象
} @Override
public long getItemId(int position) {
return position;//返回Item的id
}
//得到Item的View视图
@Override
public View getView(int position, View convertView, ViewGroup parent) {
//加载List—item。xml布局文件
View view =View.inflate(MainActivity.this,R.layout.list_item,null);
TextView title =(TextView) view.findViewById(R.id.title);
TextView price =(TextView) view.findViewById(R.id.price);
ImageView iv=(ImageView) view.findViewById(R.id.iv);
title.setText(titles[position]);
price.setText(prices[position]); iv.setBackgroundResource(icons[position]);
return view;
}
} }
Android第五六周作业的更多相关文章
- 2018-2019-1 20189221 《Linux内核原理与分析》第六周作业
2018-2019-1 20189221 <Linux内核原理与分析>第六周作业 实验五 实验过程 将Fork函数移植到Linux的MenuOS fork()函数通过系统调用创建一个与原来 ...
- 1903021116—吉琛—Java第六周作业—类的定义
项目 内容 课程班级博客链接 19信计班 这个作业要求链接 第六周作业链接 java面向对象的概念和定义 博客名称 学号-姓名-Java第六周作业-题目自拟 要求 每道题要有题目,代码(使用插入代码, ...
- 201621123080《java程序设计》第六周作业总结
201621123080<java程序设计>第六周作业总结 1. 本周学习总结 2. 书面作业 clone方法 1.1 在test1包中编写Employee类,在test2包中新建一个Te ...
- 2019-2020-1 20199329《Linux内核原理与分析》第六周作业
<Linux内核原理与分析>第六周作业 一.本周内容概述: 学习系统调用的相关理论知识,并使用库函数API和C代码中嵌入汇编代码两种方式使用getpid()系统调用 学习系统调用syste ...
- 2020-2021-1 20209307《Linux内核原理与分析》第六周作业
这个作业属于哪个课程 <2020-2021-1Linux内核原理与分析)> 这个作业要求在哪里 <2020-2021-1Linux内核原理与分析第六周作业> 这个作业的目标 & ...
- C语言--第六周作业评分和总结(5班)
作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1250 一.评分要求 要求1 完成PTA第六周所有题,若存在抄袭现象,倒扣此题 ...
- 1903021121—刘明伟—Java第六周作业—java类
项目 内容 课程班级博客链接 19信计班(本) 作业要求链接 第6周作业 扩展阅读 java面向对象的概念和定义 作业要求 每道题要有题目,代码,截图(只截运行结果). 题目1: 一个Phone ...
- 201621123062《java程序设计》第六周作业总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰 ...
- 2019春第六周作业Compile Summarize
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 对指针的使用更加得心应手 参考文献与网址 C语 ...
随机推荐
- 前端知识之html基础
前端知识之html内容 web服务本质 浏览器发送请求-->http协议-->服务端接收请求-->服务端返回响应-->服务端把html文件内容发给浏览器-->浏览器渲染页 ...
- SQL语句优化、mysql不走索引的原因、数据库索引的设计原则
SQL语句优化 1 企业SQL优化思路 1.把一个大的不使用索引的SQL语句按照功能进行拆分 2.长的SQL语句无法使用索引,能不能变成2条短的SQL语句让它分别使用上索引. 3.对SQL语句功能的拆 ...
- Docker容器入门介绍
1.前言 Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机.不过,Docker 跟传统的虚拟化方式相比具有众多的优势.Docker: 本意是码头工人,言外之意是集装箱: Java号称 ...
- NET程序的代码混淆、加壳与脱壳
通常我们通过代码混淆.加密的形式达到软件保护的目的.在Web开发里我们接触过的可能就是JS代码加密了,可以通过对JS代码进行混淆.加密从而实现对核心JS代码的保护.如果没有接触过的可以在这里简单了解一 ...
- 七天接手react项目 系列 —— 尾篇(antd 和 mobx)
其他章节请看: 七天接手react项目 系列 尾篇 前面我们依次学习了 react 基础知识.react 脚手架创建项目.react 路由,已经花费了不少时间,但距离接手 spug_web 项目还有一 ...
- Ubuntu16.04 oh_my_zsh 安装与配置
参考文章 Ubuntu上使终端显示Git分支(oh-my-zsh) oh-my-zsh的安装与基本配置 Ubuntu 下安装oh-my-zsh 前言 之前学习Laravel的时候,经常要切换git分支 ...
- 使用 Spring Cloud 有什么优势?
使用 Spring Boot 开发分布式微服务时,我们面临以下问题 与分布式系统相关的复杂性-这种开销包括网络问题,延迟开销,带宽问题,安全问题. 服务发现-服务发现工具管理群集中的流程和服务如何查找 ...
- ArrayList分别与LinkedList、Vector、Array的区别
ArrayList与LinkedList的区别 ArrayList底层是一个动态数组,LinkedList底层是双向链表 当随机访问List时(get和set操作),ArrayList比LinkedL ...
- spring-boot-learning 缓存之redis
什么是BSD协议: BSD是"Berkeley Software Distribution"的缩写,意思是"伯克利软件发行版". BSD开源协议是一个给于使用者 ...
- 介绍一下 WebApplicationContext?
WebApplicationContext 是 ApplicationContext 的扩展.它具有 Web 应用 程序所需的一些额外功能.它与普通的 ApplicationContext 在解析主题 ...