ym——Android从零开始(2)(打电话,发短信,常用布局)(新)
前言
在上一篇了解了体系,安装开发环境,现在可以开始进行代码编写,实现功能了,来实现几个常用又简单的功能吧~!
打电话:
代码思路:
打电话是通过来完成的,(是意图的意思),
在中可以用来激活组件(,,),
通过启动一个传入,跳转的打电话的
代码实现:
Intent intent = new Intent();//创建一个意图
intent.setAction(intent.ACTION_CALL);//设置活动 -- 你要做什么
intent.setData(Uri.parese("tel:" + 电话号码)); //设置数据
startActivity(intent);//激活意图
所需权限:
发短信
代码思路:
发短信有两种方式:第一种是类似于打电话(使用意图的方式来发短信),
第二种是通过短信管理器来发送短信,可以用短信管理器获得一个默认的短信管理器实例
代码实现:
//发短信
SmsManager smsManager = SmsManager.getDefault();
//拆分短信
//因为短信只支持140bytes 70个文中
ArrayList text= smsManager.divideMessage(content);
SmsManager manager = new SmsManager.getDefault();//得到短信管理器manager.sendMultipartTextMessage(destinationAddress //地址 -- 电话号码scAddress //短信中心地址text //短信内容sentIntent //短信发送成功意图deliveryIntent); //短信被对方接收意图//属性manager.MAX_USER_DATA_BYTES;//获得一跳最大容量的短信
//土司(提示用户)
Toast toast = Toast.makeText(this, "短信发送成功", Toast.LENGTH_LONG);
toast.show();//显示
所需权限:
常用布局
(线性布局)
代码分析
属性表示设置布局中的控件方向,其属性有两种,一种是垂直排列,另外一种是水平排列。这里设置成垂直排列。
常用属性
属性
所有的组件都有属性,不设置默认为零。其属性表示当前还有多大视图就占据多大的视图:如果其值高于零,则表示将父视图中可用的空间进行分割,分割的大小是当前屏幕整体布局的值与每个组件值的占用比例而定
:
每个组件默认其值为左上角对其,其属性可以调整组件对其方式,如向左,向右,居中等
:
边距的填充每页称内边距。
:
外边距。
内边距指的是当前布局与包含的组件之间的边距
外边距指的是与其他组件之间的边距
(相对布局)
代码分析
每个组件都可以指定相对其他组件或父组件的位置,值是必须通过ID来进行指定
组件之间的位置关系
属性名称
作用
:
将该组件放在指定ID组件的上方
:
将该组件放在指定ID组件的下方
:
将该组件放在指定ID组件的左方
:
将该组件放在指定ID组件的右方
组件对齐方式
属性名称
作用
:
将该组件放在指定ID组件进行中心线对齐
:
将该组件放在指定ID组件进行顶部对齐
:
将该组件放在指定ID组件进行底部对齐
:
将该组件放在指定ID组件进行左边对齐
:
将该组件放在指定ID组件进行右边对齐
当前组件与父组件的对齐方式
属性名称
作用
:p
该组件与父组件进行顶部对齐
:tton
该组件与父组件进行底部对齐
:ft
该组件与父组件进行左边缘对齐
:ght
该组件与父组件进行右边缘对齐
组件放置的位置
属性名称
作用
:tal
将该组件放置在水平方向中央的位置
:l
将该组件放置在垂直方向的中央的位置
:t
将该组件放置父组件的水平垂直中央的位置
(表格布局)
常用属性
属性:以0为序,当里面的控件布满局时,指定列自动填充可用部分:当里面的控件还没有布满布局时,不起作用。
属性:以第0行为序,指定列对空白部分进行填充。
属性:以第0行为序,隐藏指定的列。
属性:以第0行为序,设置组件显示正在指定列。
属性:以第0行为序,设置组件占用列数。
(帧布局)
后一个组件会将前一个组件覆盖
(绝对布局)
常用属性
,用于对改控件的位置进行调整。
五种布局可以嵌套使用
打电话和发短信是需要权限的,(通过方式的发短信是不需要权限的)
学习后必知问题(有些本文没有提到过的,要自己去学习,很重要!):
()有什么样作用?
查找资源文件(R.java)
怎样去激活系统拨号组件?
使用
权限的作用是什么?在哪里加?
保证用户的安全性,在.xml
发短信需要使用什么类?
一共有哪些常用布局?
相对布局, 线性布局,Table 表格布局, 绝对布局,Frame 帧布局。