ym——Android从零开始(2)(打电话,发短信,常用布局)(新)

2023-12-23 10:40

本文主要是介绍ym——Android从零开始(2)(打电话,发短信,常用布局)(新),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载请注明本文出自Cym的博客(http://blog.csdn.net/cym492224103),谢谢支持!


前言

在上一篇了解了Android体系,安装Android开发环境,现在可以开始进行代码编写,实现功能了,来实现几个常用又简单的功能吧~!


打电话:

代码思路:

打电话是通过Intent来完成的,(Intent是意图的意思),

AnroidIntent可以用来激活组件(Activity,Service,ContentProvider),

通过启动一个Activity传入Intent,跳转的打电话的Activity


代码实现:

Intent intent = new Intent();//创建一个意图
intent.setAction(intent.ACTION_CALL);//设置活动 --  你要做什么
intent.setData(Uri.parese("tel:" + 电话号码)); //设置数据
startActivity(intent);//激活意图


所需权限:

<uses-permission android:name="android.permission.CALL_PHONE"/>


发短信

代码思路:

发短信有两种方式:第一种是类似于打电话(使用意图的方式来发短信)

第二种是通过SMSManager短信管理器来发送短信,可以用短信管理器获得一个默认的短信管理器实例


代码实现:

//发短信
SmsManager smsManager = SmsManager.getDefault();
//拆分短信  
//因为短信只支持140bytes 70个文中
ArrayList<String>  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();//显示</span>

所需权限:

<uses-permission android:name="android.permission.SEND_SMS" />

常用布局

LinearLayout(线性布局)

1.1.png1.2.png


代码分析

Orientation属性表示设置布局中的控件方向,其属性有两种,一种是vertical垂直排列,另外一种是horizontal水平排列。这里设置成垂直排列。


常用属性

Layout_weight属性

所有的组件都有Layout_weight属性,不设置默认为零。其属性表示当前还有多大视图就占据多大的视图:如果其值高于零,则表示将父视图中可用的空间进行分割,分割的大小是当前屏幕整体布局的Layout_weight值与每个组件Layout_weight值的占用比例而定

Gravity

每个组件默认其值为左上角对其,其属性可以调整组件对其方式,如向左,向右,居中等

Padding

边距的填充每页称内边距。

Layout_margin

外边距。

1.3.png

Padding 内边距指的是当前布局与包含的组件之间的边距

Layout_margin 外边距指的是与其他组件之间的边距


RelativeLayout(相对布局)

1.4.png1.5.png


代码分析

每个组件都可以指定相对其他组件或父组件的位置,值是必须通过ID来进行指定

组件之间的位置关系

属性名称

作用

Android:layout_above

将该组件放在指定ID组件的上方

Android:layout_below

将该组件放在指定ID组件的下方

Android:layout_toleftOf

将该组件放在指定ID组件的左方

Android:layout_toRightOf

将该组件放在指定ID组件的右方

                                  组件对齐方式

属性名称

作用

Android:layout_alignBaseline

将该组件放在指定ID组件进行中心线对齐

Android:alignTop

将该组件放在指定ID组件进行顶部对齐

Android:alignBottom

将该组件放在指定ID组件进行底部对齐

Android:alignLeft

将该组件放在指定ID组件进行左边对齐

Android:alignRight

将该组件放在指定ID组件进行右边对齐

当前组件与父组件的对齐方式

属性名称

作用

Android:layout_alignParentTop

该组件与父组件进行顶部对齐

Android:layout_alignParentBotton

该组件与父组件进行底部对齐

Android:layout_alignParentLeft

该组件与父组件进行左边缘对齐

Android:layout_alignParentRight

该组件与父组件进行右边缘对齐

组件放置的位置

属性名称

作用

Android:layout_centerHorizontal

将该组件放置在水平方向中央的位置

Android:layout_centerVertical

将该组件放置在垂直方向的中央的位置

Android:layout_centerInParent

将该组件放置父组件的水平垂直中央的位置

       

TableLayout(表格布局)

1.6.png1.7.png


常用属性

        shrinkColumms属性:0为序,当TableRow里面的控件布满局时,指定列自动填充可用部分:当TableRow里面的控件还没有布满布局时,shrnkColumms不起作用。

        strechColumms属性:以第0行为序,指定列对空白部分进行填充。

        collapseColumms属性:以第0行为序,隐藏指定的列。

        Layout_column属性:以第0行为序,设置组件显示正在指定列。

        Layout_span属性:以第0行为序,设置组件占用列数


FrameLayout(帧布局)

1.8.png1.9.png


后一个组件会将前一个组件覆盖


AbsoluteLayout(绝对布局

2.0.png2.1.png


常用属性

Layout_x,Layout_y 用于对改控件的位置进行调整。

五种布局可以嵌套使用

打电话和发短信是需要权限的,(通过Intent方式的发短信是不需要权限的)


学习后必知问题(有些本文没有提到过的,要自己去学习,很重要!):

findViewById()有什么样作用?

查找资源文件(R.java)

怎样去激活系统拨号组件?

使用intent

权限的作用是什么?在哪里加?

保证用户的安全性,在AndroidMainfest.xml

发短信需要使用什么类?

SmsManager

一共有哪些常用布局?

Relative Layout相对布局,Linear Layout线性布局,Table Layout表格布局,Absolute Layout绝对布局,Frame Layout帧布局。


这篇关于ym——Android从零开始(2)(打电话,发短信,常用布局)(新)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/527744

相关文章

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

Python将字符串转换为小写字母的几种常用方法

《Python将字符串转换为小写字母的几种常用方法》:本文主要介绍Python中将字符串大写字母转小写的四种方法:lower()方法简洁高效,手动ASCII转换灵活可控,str.translate... 目录一、使用内置方法 lower()(最简单)二、手动遍历 + ASCII 码转换三、使用 str.tr

CSS3 布局样式及其应用举例

《CSS3布局样式及其应用举例》CSS3的布局特性为前端开发者提供了无限可能,无论是Flexbox的一维布局还是Grid的二维布局,它们都能够帮助开发者以更清晰、简洁的方式实现复杂的网页布局,本文给... 目录深入探讨 css3 布局样式及其应用引言一、CSS布局的历史与发展1.1 早期布局的局限性1.2

Spring Boot 常用注解整理(最全收藏版)

《SpringBoot常用注解整理(最全收藏版)》本文系统整理了常用的Spring/SpringBoot注解,按照功能分类进行介绍,每个注解都会涵盖其含义、提供来源、应用场景以及代码示例,帮助开发... 目录Spring & Spring Boot 常用注解整理一、Spring Boot 核心注解二、Spr

Java中的内部类和常用类用法解读

《Java中的内部类和常用类用法解读》:本文主要介绍Java中的内部类和常用类用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录内部类和常用类内部类成员内部类静态内部类局部内部类匿名内部类常用类Object类包装类String类StringBuffer和Stri

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

MySQL连接池(Pool)常用方法详解

《MySQL连接池(Pool)常用方法详解》本文详细介绍了MySQL连接池的常用方法,包括创建连接池、核心方法连接对象的方法、连接池管理方法以及事务处理,同时,还提供了最佳实践和性能提示,帮助开发者构... 目录mysql 连接池 (Pool) 常用方法详解1. 创建连接池2. 核心方法2.1 pool.q

Spring Boot 常用注解详解与使用最佳实践建议

《SpringBoot常用注解详解与使用最佳实践建议》:本文主要介绍SpringBoot常用注解详解与使用最佳实践建议,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、核心启动注解1. @SpringBootApplication2. @EnableAutoConfi