# Day04-Android
Day04-Android
标签(空格分隔): andrroid
1.制作界面
2.在写Activity.
Logcat
LayoutInflate把Xml转换纯成View的工具。
自定义吐司
LayoutParams.LayoutParams布局参数。设计宽高
读源码心得
1.LinearLayout是ViewGroup的子类。而布局参数LayoutParams是一个静态类,主要是用来设计各个 控件的长宽高,根据不同类继承。每个特定的布局类有自己同的属性,所以在封装的时候类也会不同。
1.中午写完自定义toast界面在睡觉;
问题
- 适配器里适配的是哪个控件的属性?完成
- 对话框练习,墙纸的更换;完成
- 稀疏布尔数组是什么玩意?完不成。
Toast自定义界面。完成- 对话框的练习?完成
- 工厂设计模式;完成
getResources()方法的作用 完成
解决问题:
- 7.
getResources()方法的作用
资源包
package android.content.res;在安卓里面所属的是这样的资源包,而getResources()方法在ContextThemeWrapper类里面重写了该方法,重要的是一个Activity继承并且实现了如下的类
public class Activity extends ContextThemeWrapper
implements LayoutInflater.Factory2,
Window.Callback, KeyEvent.Callback,
OnCreateContextMenuListener,ComponentCallbacks2,
Window.OnWindowDismissedCallback
而当中的ContextThemeWrapper该方法
工厂设计模式;
就是内部创建一个工厂类,用来初始化该类,通过工厂类来初始化该类的对象。2.墙纸的更换
<!-- 设置手机壁纸,需要权限 -->
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
/**
* 一个长按修改手机壁纸的方法。
*/
private void setPaper()
{
// 获取到控件,
final ImageView bgimg_tv = (ImageView) findViewById(R.id.bgimg_tv);
// 设置监听事件
bgimg_tv.setOnLongClickListener(new View.OnLongClickListener()
{
@Override
public boolean onLongClick(View v)
{
// 通过图片控件前景图片属性来设置手机壁纸
System.out.println("长按触摸监听");
try
/**
* 、 Drawable :可绘制的资源,包含 Bitmap、图层,可绘制的颜色资源等,它是一个抽象类
*
*/
{ // 清除手机壁纸
clearWallpaper();
// getDrawable获取到的全景图片
Drawable drawable = bgimg_tv.getDrawable();
// 位图对形象
BitmapDrawable bitmapDra = (BitmapDrawable) drawable;
// bitmap是一个位图格式,如bigMap等等。
Bitmap bitmap = bitmapDra.getBitmap();
setWallpaper(bitmap);
} catch (IOException e)
{
e.printStackTrace();
}
return true;
// 如果返回
}
});
}
- 4.
Toast自定义界面。
* 自己定义一个xml界面
*/
public void showXmlLayout(View v)
{
/**
* 想要吐出一个界面:用xml布局的。 设计出要吐出的界面。 resoure : 我们要加载的xml文件的资源id root:
* 是否要加入的到父控件当中
*/
View layoutView = LayoutInflater.from(context).inflate(R.layout.toast_layout, null);
// 设置文本的参数 设置加载文本文件的参数,必须通过LayoutView获取。
TextView textView = (TextView) layoutView.findViewById(R.id.title_tv);
textView.setText("你怎么看待这个问题!");
// 创建toast对象,
Toast toast = new Toast(context);
// 把要Toast的布局文件放到toast的对象中
toast.setView(layoutView);
toast.setDuration(toast.LENGTH_SHORT);
toast.setGravity(Gravity.TOP, 70, 80);
toast.show();
}
脑洞大开
- 一定要有目的有机会的去学习编程。这样写程序会更快许多。
# Day04-Android的更多相关文章
- day04关于MySqL—Android小白的学习笔记
Mysql入门 1. 数据库基本知识(了解) 1.1.数据库介绍 1.1.1.什么是数据库?数据库的作用是什么? 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户 ...
- 2017-2018-1 JAVA实验站 冲刺 day04
2017-2018-1 JAVA实验站 冲刺 day04 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 找背景音乐 100% 张浩林 游戏操作说 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记
以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
随机推荐
- 参考SQLHelper编写的OracleHelper
使用 Oracle.ManagedDataAccess.Client 类库参考SQLHelper编写的OracleHelper: // ================================ ...
- Android学习笔记(十一)BroadcastReceiver动态注册、注销示例
在上一篇博文中简单介绍了一下BroadcastReceiver的相关知识点,本篇举一个在代码中动态的注册.注销BroadcastReceiver的栗子. 1.首先创建一个MyReceiver并继承Br ...
- .NET Linq/MVC/架构
学习参考: http://www.cnblogs.com/wangiqngpei557/p/3576685.html
- 兼容的placeholder属性
作为一个.net后台开发的程序猿,博客里既然大多都是前端相关的博文.是不是该考虑换方向了,转前端开发得了 ... 小小吐槽一下,近期受该不该跳槽所困惑,我有选择困难症! 继续前端,这次说一下输入框 p ...
- 开发者MAC电脑里的十八般兵器
古人常以刀.枪.剑.戟.斧.钺.铲.叉.鞭.锏.锤.戈.镋.棍.槊.棒.矛.钯十八种兵器,样样精通,来形容一个人的武学技能get状态.在开发者的世界里,熟练掌握各种辅助工具,可以达到事半功倍,快速提高 ...
- HTML快速参考
HTML 模版 html> <head> <meta charset="utf-8"/> <title>html template< ...
- iOS中SQLite知识点总结1
数据库(SQLite) 01-数据库简介 1.什么是数据库 数据库(Database)是按照数据结构来组织,存储和管理数据的仓库 2.数据库的分类 关系型数据库(主流) PC端:Oracle/MySQ ...
- eclipse中使用tomcat图解
配置步骤: 1. tomcat7是绿色软件,解压后即可使用,请大家先将tomcat解压到合适的位置(建议整个路径都是英文路径), 2. 打开eclipse,菜单栏下,File--New--Other. ...
- win10清理C盘
用win10系统也不是很久,发现C盘容量越来越小了,于是乎扫描了一下,发现有两个文件容量很大 C:/hiberfil.syssize:1660444672 C:/swapfile.syssize:26 ...
- 加速数组操作(Array)
Measure-Command { $ar = @() for ($x=0; $x -lt 10000; $x++) { $ar += $x } }执行结果:3.301s Measure-Comman ...