安卓期末考试

2023-11-02

考点

第二章、第三章(核心点)
第二章最后讲了一个线程,必须要会
第四章了解
第五第六第七了解
第九章三个存储:简单存储会写,文件存储,数据库存储
第十章不会考很多,核心也是线程
#安卓 #移动应用开发 #考试

选择题

Logcat

e error

i info

w warnning

d debug

MVC

m 模型:存储数据和代码

v 视图:显示用户页面和图像

c 控制器:处理用户输入

ViewGroup

ViewGroup 和TextView是View 的子类

音效:

MeadialPlayer是用来播放大型音乐适合用来播放游戏背景音乐

soundpool:适合用来播放小型音效,可以同时播放多种音效

网络访问:

开线程,加权限

开放手机联盟OHA:

产品商、电信运营商、软件厂商、芯片制造商、手机软件商、手机硬件商

Text类六个:

Textview EditView Button ImageButton GroupButtion checkbox

简答题:

Android的特点,与ios比较:

安卓不局限与操作系统,支持多个开发工具,使用java语言,因为市面上有多个厂商

所以安卓的兼容性较低、ui界面交互仍需要用户同时使用触屏和按键。

四层android模型:

程序应用层、程序应用框架层、运行环境和工具、Linux内核层

android5.1更新了什么

全新的material design 页面

支持64位

强化网络和连接支持

优化Android tv

目录结构:

src:存放要java源代码

gen:存放编译器自动生成的代码

libs:存放第三方包

res:存放安卓项目所以使用的素材和资源

四大组件:

activity:是安卓应用的显示层,显示可视化的用户页面,并且接受用户与页面交互得到的页面事件。

service:是用于没有用户界面的,并且长时间运行在后台的应用,可以提供service接口供其他程序调用

broadcasereceiver:用来接受广播消息的组件,不包含在任何页用户页面里可以调用activity和notification来告诉用户收到重要消息。

contentprovider:提供一种标准的用户共享数据的机制,其他程序可以通过contentprovider来访问该程序的私有数据,同时安卓系统内提供一些内置的contentprovider,能够提供一些重要数据信息

六大页面

线性布局:

放入的控件按照水平或者垂直来排列,一行或者一列只能存放一个元素,若内容排到容器外面将不会显示

相对布局:

更多来描述组件与组件之间的位置关系,每一个组件都包含了很多的关于位置的属性,当一个属性移动时,其他与他关联的属性也一起移动。

表格布局:是不规则不布局,是动态定义多少行和多少列

网状布局:是规则的布局,事先定义好多少行,多少列的单元格,然后接着自己定义元素填入到单元格里面去。

绝对布局:用x,y表示所有组件

帧布局:以左上角位参考,对父容器的左边和上边,元素可以重叠显示,即后元素可以遮盖前者,一起共同显示。

程序填空:

编程

xml编程:

<Textview
android:layout_width="match_partent"
android:layout_height="warp_match"
android:id="@+id/XXX"
android:text="XXXX"/>

Spinner:

Spinner spinner = (Spinner) findViewById(R.id.spinner);
        List<String> list = new ArrayList<String>(); // 注意
        list.add("a");
        list.add("b");
        list.add("c");
        ArrayAdapter<String> adapter = new ArrayAdapter<String> (
            this, android.R.layout.simple_spinner_item, list
        );
        spinner.setAdapter(adapter);
### onclick

```java
Button button=(Button)findViewById(R.id.XX);
button.setOnClickListener(new View.OnClickListener{
			public void OnClick(View v){}
});

intent单向

我方:
Intent intent=new Intent(XXXX.this,XXX.class);
intent.putExtra("XXX",x);
startActiviyt(intent);
对方:
Intent intent=getIntent();
String x=intent.getStringExtra("x");

intent双向:

我方:
Intent intent=new Intent(XXXX.this,XXX.class);
intent.putExtra("XXX",x);
startActiviytForResult(intent,1);

....
protected void onActivityResult(int requestcode,int repuestcode,Intent data){
					if(...){
            ...
}

}
对方:
Intent intent=getIntent();
String a=intent.getStringExtra("x");
....
setResult(1,intent);
finish();

线程

public XXX extent Activity{
 private Handler handle =new Handler(){

 public void handleMessage(Message msg){}

};

protected void onCreate(Bunlde b){
super.onCreate(b);

setContentView(R.id.XXX);

new Thread(new Runnable{

public void run(){

}

}).start();

}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.fuxi">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.Fuxi">
        <activity
            android:name=".MainActivity4"
            android:exported="false" />
        <activity
            android:name=".MainActivity3"
            android:exported="false"></activity>
        <activity
            android:name=".MainActivity"
            android:exported="false"></activity>
        <activity
            android:name=".MainActivity2"
            android:exported="true"
            android:launchMode="singleTop">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

sharedPerference 简单存储

SharedPerference sp=getSharedPreference("XXXX",MODE_PRIVATE);
sp.getString("  键名"," 默认值 ");
sp.putString("","");

SQLite

SQLiteDatabase db = openOrCreateDatabase("user.db", Context.MODE_PRIVATE, null);
        db.insert(); // 增
        db.delete(); // 删
        db.query(); // 查
        db.update(); // 改

        // TABLE_NAME 表名
        // Values 键值对,一大堆数据
        // WHERE username=xxx

Text视图的基本类型:

TextView,EditView,Button,ImageButton,CheckBox,GroupButton.

Toast

Toast.makeText(this,"",Toast.LENGTH_LONGE).show();

对话框

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

安卓期末考试 的相关文章

  • setContentView 上的另一个资源$NotFoundException

    Stack Overflow 上有很多 Resources NotFoundException 问题 我已经查看了它们并尝试了各种建议 但均无济于事 我有一个完美的工作布局来显示一些图形 下面有一些按钮 我修改了一些按钮并开始出现此错误 我
  • 获取按下按钮的压力

    android 中有没有一种简单的方法来获取用户在 onClick 事件期间施加的压力 如果您向按钮添加 MotionEvent 侦听器 您可以向 MotionEvent 请求压力 相关文档 http developer android c
  • 如何更改Android Studio中的编译版本?

    我总是使用 eclipse 来构建 android 项目 当我使用eclipse启动一个新项目时 我可以选择编译版本 但是在Android Studio中 当我启动新模块时 我只能选择最小版本 我试图改变compileSdkVersion
  • 如何在preferenceActivity中设置导航抽屉

    在我的应用程序中 我的每个活动都带有抽屉 但是当我在我的首选项活动中设置抽屉时 我的活动工作正常 但抽屉没有出现 这是我的代码 public class SettingActivity extends PreferenceActivity
  • Android 使用键盘上的“完成”按钮来单击按钮

    好的 在我的应用程序中 我有一个供用户输入数字的字段 我已将该字段设置为仅接受数字 当用户单击该字段时 它会弹出键盘 键盘 ICS 上 上有一个完成按钮 我希望键盘上的完成按钮能够触发我的应用程序中的提交按钮 我的代码如下 package
  • Android:删除整个数据库

    我想删除由我的应用程序创建的完整数据库 你知道有什么adb命令或者android语句可以做到这一点吗 您可以运行命令 adb s emulator 5554 shell or whatever port you use cd data da
  • 毕加索不在磁盘上缓存图像

    我必须使用自定义 OkHttpClient 以便我可以向图像请求添加标头 问题是毕加索不会因此而在磁盘上缓存任何图像 我用过setIndicatorsEnabled true 检查缓存 我只看到红色指示器 当我使用默认的 OkHttpDow
  • 如何在每个项目的列表视图中实现简单的点赞按钮

    我的列表视图项目中有某些条目 我有一个简单的 喜欢按钮 不是像 Facebook 的按钮 您可以看到上面提到的屏幕截图 供参考 当我点击 喜欢 按钮的那一刻 我希望更改 喜欢 按钮的颜色 并且 喜欢 按钮的颜色应保持不变 改变了喜欢 当我再
  • 更改Android TabWidget底部栏颜色

    如何更改 TabWidget 底部栏的颜色 我已经成功更改了选项卡背景颜色 但底部栏仍然是灰色 橙色 并且我在 Android 文档和源代码中找不到与此相关的任何信息 谢谢 See 启用 禁用此行 tabHost getTabWidget
  • AsyncTask加载图像RecyclerView

    我正在尝试创建一个与该应用程序类似的应用程序 一个在回收视图中包含一些图像和描述 卡片视图 的应用程序 https lh5 ggpht com At pHbZqdzlgmAqY0jbiztDYIAts1wOYWGTOHibmFHuq8CFA
  • 是否可以检测Android应用程序卸载?

    我的应用程序使用 Google 的 C2DM 推送通知 来通知用户朋友的新活动 一旦他们安装了应用程序 我就会向 C2DM 服务器注册设备并存储用户的电话号码 所以我知道用户正在使用我的应用程序 我可以向他 她发送推送通知 但是 如果用户卸
  • 如何在 Android 中对视图进行动画处理并让它保持在新的位置/大小?

    目前 我的 Android 应用程序中有一个视图 并且该视图正在播放帧动画 我想要动画视图以将其大小增加到 150 当我对其应用缩放动画并且缩放动画完成时 我希望查看器在活动生命周期的其余部分中保持新的尺寸 不幸的是 现在当放大动画完成时
  • Nativescript 中本机传感器的可访问性

    我决定选择在 Nativescript 跨平台 IOS Android 中实现应用程序 或者相应地使用 java swift 制作 真正的 本机应用程序 放弃明显的 1 代码库与 2 代码库讨论 我不确定 Nativescript 的局限性
  • 在android上获取电池温度

    android 如何获取电池的温度 http developer android com reference android os BatteryManager html http developer android com referen
  • 如果使用 PackageManager 禁用应用程序图标,是否会导致该应用程序的自动更新出现问题?

    我有一个应用程序 其中使用以下代码隐藏应用程序图标 PackageManager p getApplicationContext getPackageManager p setComponentEnabledSetting getCompo
  • Android 堆栈跟踪显示生产 Firebase crashlytics 中的测试代码

    该应用程序的 Play 商店版本的 Firebase crashlytics 中报告了该异常 当用户进入启动活动时会发生这种情况 任何帮助 将不胜感激 谢谢 没有其他可用的堆栈跟踪有助于跟踪代码发生的位置 Fatal Exception j
  • Android Path addArc 在canvas中两点之间

    我正在尝试在 android 中绘制弧线 在IOS中 用这个方法确实很简单 path addArcWithCenter radius startAngle endAngle clockwise 在android中 我有3个点 我的圆的中心
  • 将 cookie 存储在共享首选项中

    我一直在绞尽脑汁地试图弄清楚这一点 我正在制作一个 HttpsURLConnection 并使用 java net cookiemanager 来管理我的 cookie 据我所知 无法使用 android webkit cookiemana
  • .so 文件的 objdump?需要帮助来理解消息

    我正在开发一个与流相关的本机应用程序 我在我的 c 模块中遇到了一些问题 我收到的是来自 Logcat 的一些消息 这是 Logcat 消息 INFO DEBUG 28 Build fingerprint generic sdk gener
  • 刷新 ArrayAdapter onResume [notifyDataSetChanged() 不起作用]

    我正在使用片段创建一个联系人列表应用程序 其中一个片段是联系人列表中的姓名列表 另一个是其余详细信息 这是显示名称列表的类 public class MyListFragment extends ListFragment private C

随机推荐

  • 一些比较好的国外IT网站

    1 在线编程练习 LintCode 在线刷题网站 阶梯式训练 可帮助你更快速深入地了解各类面试题型 提供专业导师写的最优代码作为参考 Lintcode 标准答案查询 lintcode 的参考答案网站 提供最优解 Codecademy 包含在
  • Python find()函数使用详解

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 推荐专栏 小白零基础 Python入门到精通 find 1 指定检索位置 2 参数为负数 3 超出范围 3 find 和ind
  • 微信发朋友圈测试用例

    微信发朋友圈测试用例 一 界面 1 字体的大小 字体的大小是否可以改变 编辑朋友圈时的字体和发出的字体大小是否一致 2 图片 图片的排版格式 图片不同数量时的排版格式 最多展示的图片的数量 3 视频 视频展示的格式 4 转发 5 编辑朋友圈
  • 虚拟机配置(VMware)

    基础配置 下载镜像 阿里云开源镜像centos安装包下载 开源镜像站 阿里云 操作系统 处理器 内存 硬盘 IP地址 static 环境 CentOS 7 9 2009 2C4G 100G 192 168 58 2 阿里源 虚拟机基础配置
  • C++ 格式化输出日期&时间

    1 声明结构体 struct tm 2 time 0 获取当前的时间戳 3 用时间戳来填充结构体 localtime r 时间戳 tm结构体 4 用格式字符串来将tm结构体转换为指定格式的日期时间字符串 strftime char数组 数组
  • Spring Boot logback-sping彩色日志

    Spring Boot logback sping彩色日志 application配置 开启mybatis日志 logging level com ysh oasys mapper debug logging file path logs
  • mgr未同步 mysql_MySQL MGR实现分析 - 成员管理与故障恢复实现

    此文已由作者温正湖授权网易云社区发布 欢迎访问网易云社区 了解更多网易技术产品运营经验 MySQL Group Replication MGR 框架让MySQL具备了自动主从切换和故障恢复能力 举single primary 单主 模式为例
  • 【简易心电测量电路(AD620)】

    学生版低成本心电测量 1 背景 1 1 心电图产生原理 1 2 心电信号特征 1 3 项目总体设计 2 电路设计 2 1前级放大与右腿驱动电路 2 2 低通滤波电路 2 3 50Hz陷波电路 2 4 后置放大电路 3 部分测试 3 1 前级
  • 以太坊原理分析(二)以太坊区块结构和账户体系

    1 引言 区块链的本质是一个分布式的数据库 因此不同时刻的用户数据的写入对应着不同的状态 比特币使用UTXO来表示状态的转移 而以太坊使用账来表示状态的转移 2 账户 以太坊中存在两种账户 分别是外部账户和合约账户 外部账户EOA 一般自然
  • js json数组获取最大、最小值

    var array index id 119 area id 18335623 name 满意度 value 100 index id 119 area id 18335624 name 满意度 value 20 inde
  • linux命令查看tcp流量,linux中查看系统活动情况报告sar命令详解

    有很多工具可以看网络流量 但我最喜欢sar sar System Activity Reporter系统活动情况报告 是目前 Linux 上最为全面的系统性能分析工具之一 可以从多方面对系统的活动进行报告 包括 文件的读写情况 系统调用的使
  • hbase 压缩配置

    对hbase 的hfile 进行snappy压缩的配置 1 gt hadoop集群必须先配置好snappy压缩 参考http hymanliu iteye com blog 2224330 2 gt 在hbase的lib native目录下
  • 数据挖掘基础学习笔记

    文章目录 一 数据挖掘基础 1 1 数据挖掘基础环境安装 1 2 Jupyter Notebook 1 2 1 介绍 1 2 2 快速使用 二 Matplotlib画图 2 1 Matplotlib简介 2 2 Matplotlib三层结构
  • mysqlz中navicat出现1064错误

    1064错误一般就是语法错误 如下 但是又并不很常见 当出现时你可能找半天也找不到 在这里我将说明我所遇到的很隐蔽的错误 当使用外键约束时 外键约束上方的 id 与下方拼写的 外键约束代码 之间是不加 的
  • 各种光源(灯)的光谱

    1 荧光 灯350 700nm 一般的 荧光 灯的荧光粉采用三波长荧光粉的不同类型灯管所发出光的分布 说简单就是452n 533nm 611nm 三个波长 2 白炽灯 基本在400nm 由于白炽灯是钨丝的热效应发光 波长主要集中在可见光偏红
  • java多线程使用详解与案例,超详细

    文章目录 线程lamda表达式方式启动 简单 常用 java使用多线程的三种方式 继承Thread 实现Runnable 实现Callable 线程池的使用 守护线程 使用lamda表达式简化java的书写简单化案例如下 多线程综合案例 1
  • Java 连接池 用尽_连接池已经耗尽的表现是什么?解决方法是什么?

    作为程序员的话难免经常跟数据库打交道 了解连接池倒是也不奇怪 进而知道连接池也正常 那么你是否清楚连接池已经消耗殆尽的表现是什么吗 一般怎么解决呢 有时候在通过其中一台数据库客户端连接访问服务器上的DB 所有对象 表 视图 存储过程 都打不
  • maven异常:Missing artifact com.microsoft.sqlserver:sqljdbc4:jar:4.2

    好像用依赖的方式将上面的jar包导入prom文件 idea会报错 下载该jar包会失败 两个解决方案 方案一 1 下载sqljdbc42 jar包 官网地址 https www microsoft com en us download de
  • Obliv-C使用详解(混淆电路)

    前期说明 Obliv C是一款GCC包装器 其作者在C语言的基础上对其进行了一定的类C处理 添加了一些规则限制 用于模拟实现混淆电路 Obliv C不需要手动混淆 只需要调用其中的函数便可实现混淆电路 其不涉及真实硬件电路仿真 即无法导出函
  • 安卓期末考试

    考点 第二章 第三章 核心点 第二章最后讲了一个线程 必须要会 第四章了解 第五第六第七了解 第九章三个存储 简单存储会写 文件存储 数据库存储 第十章不会考很多 核心也是线程 安卓 移动应用开发 考试 选择题 Logcat e error