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

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

常用的jdk下载地址

jdk下载地址 安装方式可以看之前的博客: mac安装jdk oracle 版本:https://www.oracle.com/java/technologies/downloads/ Eclipse Temurin版本:https://adoptium.net/zh-CN/temurin/releases/ 阿里版本: github:https://github.com/

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

android-opencv-jni

//------------------start opencv--------------------@Override public void onResume(){ super.onResume(); //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是 //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

019、JOptionPane类的常用静态方法详解

目录 JOptionPane类的常用静态方法详解 1. showInputDialog()方法 1.1基本用法 1.2带有默认值的输入框 1.3带有选项的输入对话框 1.4自定义图标的输入对话框 2. showConfirmDialog()方法 2.1基本用法 2.2自定义按钮和图标 2.3带有自定义组件的确认对话框 3. showMessageDialog()方法 3.1