Android基本组件及使用

第一个月交互式视觉设计
第一单元
常用的ADB命令
1:adb start-server 启动adb进程
2:adb kill-server 杀死adb进程
3:adb devices 显示当前运行的全部模拟器
4:adb install -r 应用程序.apk 安装应用程序
5: adb uninstall 包名 卸载软件
6:adb help 查看adb帮助信息、
7:adb logcat -s 标签名 在命令中查看log信息
8:adb root 获取管理员权限
9:adb push 路径 /sdcard/123/abc.txt; 从电脑传文件到模拟器
10:adb pull /sdcard/123/abc.txt 路径

四大组件
Activity 界面
BroadcastReceiver 广播接收者
Server 服务
ContentProvider 内容提供者
属于Android的四层结构的是哪个、
应用程序
系统运行库
应用程序框架
:内核层

第二单元
LinearLayout 线性布局 控制其中的控件或者组件横向和纵向排列
android:layout_width="" 宽度dp match_parent与父控件一致
android:layout_height="" 高度dp
android:orientation=“vertical” 设置布局中控件的摆放方向,默认水平方向摆放:horizontal
Vertical 竖直摆放 每一个控件占一行
Horizontal 水平摆放 每一个控件占一列

visibility=“gone” invisible 不可见 占位置gone不可见 不占位置 visible可见默认值

sp针对字体大小
Gravity 设置内容的对齐方式

如果水平方向上设置权重,就把layout_width属性值设置为0dp
如果垂直方向上设置权重,就把layout_height属性值设置为0dp
权重值越大, 所占的空间则越大

EditText 输入编辑文本框
hint提示文本 提示用户输入
InputType 文本输入为密码
Line 输入的字数

FrameLayout 帧布局

Foreground 前景图片
foregroundGravity 前景图像

TextView
singleLine一行显示
textAllCaps 自动大小写
Autolink 自动连接
imeOptions 改变键盘回车键的内容
Textstyle 文本样式 bold加粗 italic斜体
Ellipsize 省略号位置

设置图片出现的位置 drawable

设置跑马灯格式
singleLine true单行显示
Ellipsize marquee超出内容显示
Focusable true 设置该控件得到焦点
focusableInTouchMode true设置该控件在触摸模式下是否可以得到焦点
marqueeRepeatLimit marquee_forever跑马灯循环次数(只能设置永久)

快捷创建 alt+回车

EditText是TextView的子类
Background 继承TextView 去除按钮颜色@null

imageView 图片文本
adjustViewBounds 设置是否保持原图的长宽比
Scaletype 设置图片显示模式

Day5单元
ProgressBar 进度条

Max 设置进度值
progress一级进度值
secondaryProgress 二级进度值

Seekbar 拖动条
style设置条度样式

Ratingbar 评分条
numStars 显示星星的数量(必须是整数)
Rating 评分((默认1.5 并且只能是小数)
Stepsize 评分的步长(必须是浮点型)
Isindicator 是否只是展示
minheight最小高度

自定义进度条
Layer-list
Item 改背景和进度条

Toast 简易消息框 用来显示消息的一种机制
Toast.setGravity(显示位置,0,0); 指定位置Toast
toast.setDuration(Toast.LENGTH_LONG); 设置持续时间

监听器
点击事件监听器 OnClickListener
状态改变监听器 OnCheckedChangeListener
滚动监听器 OnScrollListener
SeekBar 拖拽监听器 OnSeekBarChangeListener

第六单元 Activity

Activity是提供全屏界面,实现与用户交互的应用程序组件
AndroidManifest.xml 清单文件中,注册Activity
Name 指定当前注册的activity
Label 指定标题
screenOrientation指定屏幕方向 landscape 横屏 portrait 竖屏

Content 上下文
Context是一个用来为应用程序提供环境信息的全局对象
Intent是用于各组件或应用之间通讯时携带信息的对象。
Intent intent = new Intent(当前activity.this,目标activity.class);
启动startactivity(intent);

Activity 七个方法
Oncreate 当activity第一次被创建的时候 初始化
Onstart 当用户可见时调用的方法
onResume activity获取用户焦点的时候
onPause 当activity失去焦点的时候
onRestart  当处于非栈顶状态的活动需要再次返回栈顶,展现给用户的时候,触发该方法。也就是说执行了onStop()且没有执行onDestroy()的Activity被重新激活时,就会调用onRestart()方法
onStop 当用户不可见的时候调用的方法
onDestory 当activity被销毁的时候调用的方法 资源释放的操作

Task 任务 把某些为了完成某个或某些应用程序功能的集合称之为Task

android:configChanges=”keyboardHidden|orientation”属性)。 横竖屏转换不让重新启动activity设置

启动模式的好处,优化内存和提高用户的体验
launchMode
Standard 默认模式 每一次启动Activity都会创建一个新的实例
singleTop拒绝堆叠模式
特点:1、可以实例化多次,但是栈顶只能出现一个
2、当栈中不存在要启动的Activity实例, 系统会创建一个Activity实例
3、当栈顶存在要启动动的Activity实例,系统会调用onNewIntent(),把Intent对象传递给已经存在的Activity实例,重用栈顶的Activity

singleTask 独立门户模式
特点: 1、只能创建一个Activity实例
2、当栈中不存在要启动的Activity实例, 系统会创建一个Activity实例, 放在栈顶
3、当栈中存在要启动的Activity实例, 会调用已经存在的Activity实例的onNewIntent()方法,把Intent对象传递给已经存在的Activity实例
4、并且不允许栈的上方出现其他的Activity实例, 他上方的Activity实例会pop栈中,并且销毁

singleInstance孤独寂寞模式
特点:
1、当使用这种模式启动Activity时,系统会单独
分配一个Task,并把这个实例放到栈底。
2、不允许其他的Activity实例和他共享一个栈

第七单元
Intent 分为 显式意图 隐式意图
隐式意图在清单文件内部
添加intent-filter过滤器
过滤器内部 第一个 action属性 name 可以为任意字母,必须唯一
第二个category属性 name=”android.intent.category.DEFAULT” 结尾只能是default
调用格式 new intent(属性必须和第一个action的name值相同);
Intent 传值
第一种直接传值
基本写法
Intent.putExtra(键,值);
启动startactivity(intent)
传递过来的对象 intent intent = getIntent();
Intent.get…(“键”)获取数据
第二种Bundle传值 打包数据
存储基本数据类型、数组、对象
基本写法
Intent intent = new Intent(this,InfoActivity.class);
声明Bundle bundle = new Bundle();
bundle .put数据类型(健,值);
intent.putExtras(bundle);
接收页面
Intent intent = getIntent();
Bundle bundle = intent.getExtras();

第三种 传递对象
类实现Serializable接口
new对象 传递对象
intent.putExtra(“user”,user);
接收页面
Intent intent = getIntent();
User user = (User)intent.getSerializableExtra(“user”);

第四种全局变量传递数据
创建类,继承Application 类 声明存储数据的变量
代表全局的应用
传递消息类名 myApp = (类名) getApplication();
类名.data.add(map);
启动activity
接收消息
MyApp myApp = (MyApp) getApplication();

Map<String,Object> map =myApp.data.get(0);

启动activity 返回数据
传递数据
startActivityForResult(intent,意图对象,请求码(任意数字,必须唯一));
重写onActivityResult()方法,接收返回的数据

返回数据
Intent data = new Intent();
data.putExtra(“imageId”,imageId);
setResult( 结果吗,data);
Finish();

Activity.this.finish()关闭当前界面

第八单元

滚动视图 ScrollView 是一种垂直滚动的容器视图。
ScrollbarSize 设置滚动条宽度
scrollbarThumbVertical 设置滚动条颜色
Scrollbars 设置滚动条是否显示
fadeScrollbars 设置滚动条自动隐藏

ScrollView的常用方法
设置ScrollView滚动条的显示或隐藏 : setVerticalScrollBarEnabled(false);
为ScrollView添加子视图:addView()
ScrollView的setOnScrollChangeListener监听器

ScrollView的特点
1:ScrollView是一种FrameLayout布局,需要在其中间放入要显示的子元素。
2:ScrollView子元素可以包含多个控件,但是直接子元素只能有一个。
3:ScrollView只支持垂直方向的滚动。

HorizontalScrollView 水平滚动视图 (方法同ScrollView)
HorizontalScrollView 的特点
1:HorizontalScrollView是一种FrameLayout布局,需要在其中间放入要显示的子元素
2:HorizontalScrollView子元素可以包含多个控件,但是直接子元素只能有一个
3:HorizontalScrollView只支持水平方向的滚动

Assets 存储资源文件Mp4,视频
特点:1:assets可以有二级目录
assets是一种特殊目录,用于放置APP所需的固定文件,这些文件被打包到APK中时,不

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值