《Android应用开发揭秘》连载2

《Android应用开发揭秘》连载2《Android应用开发揭秘》  书名:Android应用开发揭秘作者:杨丰盛出版社:机械工业出版社ISBN:9787111291954出版日期:2010年3月(1版2次)开本:16页码:515版次:1-2定价:69元豆瓣网讨论地址:http://www.douban.com/subject/4200822/China-pub预订地址:http://www.china-pub.

大家好,又见面了,我是你们的朋友全栈君。

《Android应用开发揭秘》

 

Android应用开发揭秘(国内首本基于Andriod 2.0的经典著作,5大专业社区一致鼎力推荐!)
 
书名:Android应用开发揭秘

作者:杨丰盛

出版社:机械工业出版社

ISBN:9787111291954

出版日期:2010 年3月(1版2次)

开本:16

页码:515

版次:1-2

定价:69元

豆瓣网讨论地址:
http://www.douban.com/subject/4200822/

China-pub预订地址:
http://www.china-pub.com/196305
 


第2章  Android开发环境搭建

本章讲解如何配置Android开发环境首先介绍Android开发所需要的开发包和工具,以及获得它们的方式;其次介绍如何正确安装和配置这些开发包;最后,为了测试安装的开发环境,创建了第一个Android项目——HelloAndroid,然后在模拟器上运行和调试该程序,并将该应用程序安装到Android手机上。

2.1  Android开发准备工作

配置Android开发环境之前,首先需要了解Android对操作系统的要求。它可以使用Windows XP及其以上版本、Mac OS、Linux等操作系统,本书以Windows XP为例进行讲解。Android开发所需软件的版本及其下载地址如表2-1所示。

表2-1   Android开发所需软件的版本及其下载地址

表


2.2  开发包及其工具的安装和配置

Android以Java作为开发语言,JDK是进行Java开发时必需的开发包。Eclipse是一款非常优秀的开源IDE,在大量插件的“配合”下,完全可以满足从企业级Java应用到手机终端Java游戏的开发。Google官方也提供了基于Eclipse的Android开发插件ADT,所以本书选择Eclipse作为开发IDE。

2.2.1  安装JDK和配置Java开发环境

很多人不能够很好地进行Java开发,原因就在于对Java运行环境不了解或是了解得不够透彻。如果连一个普通的Java程序运行环境都搭建不好,就更不要说理解J2EE、J2ME以及本书所讲的Android等的运行环境了。因此,这里我们先讲如何安装JDK以及Java环境的配置,教大家搭建一个学习Java的基础平台,让大家少走一些弯路,多学到一些小窃门。

(1)登录
http://java.sun.com,下载最新版JDK。

(2)安装JDK,安装包中包含了JDK和JRE两部分,笔者建议将它们安装在同一个盘符下。双击安装程序,选择安装的目录,点击“下一步”,等待安装程序自动完成安装即可。

(3)右键单击“我的电脑”,选择“属性”菜单项,选择“高级”选项卡,选择“环境变量”,找到“Path”变量名(如果没有就新建一个名为“Path”的变量),点击“编辑”按钮,添加JDK安装目录中“bin”文件夹路径,如图2-1所示。然后点击“确定”按钮完成。再找到“ClASSPATH”变量(如果没有,同样可以新建),输入JDK安装目录中“lib”以及“demo”的路径,如图2-2所示,单击“确定”按钮完成。

       


1   
2

 

              图2-1 “Path”变量配置                     图2-2 “ClASSPATH”变量配置

(4)安装配置完成之后,要测试是否安装成功。点击开始→运行,输入“CMD”,打开命令行模式。键入命令“java -version”,检测JDK是否安装成功,如果运行结果如图2-3所示,即表示安装成功。
 


3

 
    图2-3 “java -version”测试命令

2.2.2  Eclipse的安装与汉化

Eclipse的安装非常简单,直接将下载的压缩包解压即可。老版本的Eclipse的多国语言项目只更新到3.2.1版本,以后就再也没有更新了。Eclipse最近发布了一个名为Babel project的项目,这个项目就是用来解决国际化的问题,旨在为每一个插件提供独立的语言包。这样,当做RCP项目的时候,根据需要对语言进行打包即可!

Babel的安装方法和步骤如下所示:

(1)启动Eclipse开发工具,依次点击“Help ” →选择“Software Update …”菜单命令,打开“Software Updates and Add-ons”对话框,选择“Avaliable Software”项。接着点击“Add Site…”按钮,在“Location”文本框中输入Babel更新地址:
http://download.eclipse.org/

technology/babel/update-site/ganymede,然后点击 OK 按钮,如图2-4所示。


4

 
 图2-4  添加语言包更新地址

(2)“Avaliable Software”表中会多出一项
http://download.eclipse.org/technology/babel/update-site/ganymede/,点击该项左边的箭头,就会出现网络更新软件列表,如图2-5所示。


5

 
   图2-5  Avaliable Software选择框

(3)选择“Simplified Chinese”语言包后,点击 “Install… ”按钮,等待Eclipse处理。

处理完成后会出现“Install”对话框,这时会提示你选择要安装的语言包。根据提示,很容易完成后面的操作,这里就不再赘述了。

安装完毕后,重新启动Eclipse即可完成全部汉化过程。

如果重启Eclipse后不显示中文,请用命令行 “eclipse.exe -nl zh_CN”重新启动Eclipse。

2.2.3  SDK和ADT的安装和配置

安装了JDK和Eclipse后,现在就要安装Android SDK和ADT插件了。

1.Android SDK安装

(1)解压缩下载好的SDK安装包到要安装SDK的路径,然后运行“SDK Setup.exe”。

(2)如果遇到了消息为“Failed to fetch URL…”的错误提示,那么需要将HTTPS方式改为HTTP方式,在“Android SDK and AVD Manager”窗口的左侧选择 “Settings”,选中 “Force https://…”选项(如图2-6所示),点击“Save & Apply”并重新运行 SDK Setup.exe。


6

 
    图2-6  更改HTTP方式

(3)点击“Available Packages”,选择要安装的API版本及USB驱动和SDK文档,如图2-7所示。这里为了测试方便,所以全部选择了。


7

 
    图2-7  选择API版本

(4)选择好之后点击“Install Selected”按钮,安装选中的软件包,在接下来出现的界面中依次点击“Accept All”单选按钮和“Install Accepted”按钮,开始下载所选择的安装包。

下载完成之后,根据提示即可完成后续的安装操作。

到这里,我们就完成了Android SDK的安装,下面来配置Android SDK。

2.Android SDK配置

需要将Android SDK安装目录中的tools文件夹路径添加到环境变量中以便使用,操作步骤如下:

(1)右键点击“我的电脑”,依次选择“属性”→“高级”→“环境变量”选项,如图2-8所示。

(2)选择“系统变量”中变量名为“Path”的项,点击“编辑”按钮,将Android SDK安装文件夹下的tools文件夹的路径加入到“Path”变量中,注意用“、”隔开,如图2-9所示。

     


8  
9

 

                   图2-8  环境变量                            图2-9  编辑系统环境变量

(3)依次点击“确定”,完成环境变量配置。

3.安装和配置ADT

下面我们来安装和配置ADT插件,步骤如下:

(1)启动Eclipse,点击“Help”菜单,依次选择“Software Update…”项和“Avaiable Software”选项卡,点击“Add Site…”按钮,输入地址
https://dl-ssl.google.com/android/eclipse/,结果如图2-10所示。

(2)点击“OK”,这时可能会出现如图2-11所示的错误。  

 


10  
11

        图2-10  添加ADT的更新地址                     图2-11  更新地址错误


解决这个问题的方法是:将“https://dl-ssl.google.com/android/eclipse/”中的“https”更改为“http”,在接下来的对话框中选中“Name”下的所有选项,根据提示即可完成后续的安装过程。

(3)打开菜单“Windows”,依次选择“Preferences”→“Android”,点击“Browse…”按钮,选择 Android SDK的安装路径,如图2-12所示。

12
 
    图2-12  Eclipse首选项


(4)点击“OK”按钮 ,开打菜单“File”,依次选择“NEW” → “Project…”菜单命令,出现如图2-13所示的“Android Projest”选项,则表示安装配置成功。


13

 

      图2-13  新建工程界面

到这里,我们的准备工作已经就绪,可以在Android平台上开发我们的应用了,很心动吧!神奇的Android之旅即将开始。

2.3  创建第一个Android项目——HelloAndroid

为了便于第一次开发Android应用的朋友能对整个开发过程有系统性的了解,并能亲自动手创建自己的应用,我们特在本书的开篇准备了一个简单的实例项目——HelloAndroid。

2.3.1  创建HelloAndroid项目

ADT提供了简单的生成Andriod应用框架的功能,我们现在使用ADT通过Eclipse创建一个Android工程,其步骤如下。

(1)打开Eclipse开发工具,新建一个项目,在弹出的“New Project”对话框的列表中展开“Android”项,然后选择“Android Project”子项,如图2-14所示。


14

 

    图2-14  新建一个Android工程

(2)点击“Next”按钮,在“Project name”文本框中输入“HelloAndroid”,然后在“Build Target”选项框中选择“Android SDK 1.5”,在Application name文本框中输入这个应用程序的名字(HelloAndroid),在Package name文本框中输入应用程序包的名字(com.yarin.Android.HelloAndroid),在Create Activity文本框中输入Activity的名字(HelloAndroid),如图2-15所示。
 


15

 
   图2-15  新建HelloAndroid工程

(3)单击“Finish”按钮,此时Eclipse会自动完成Android项目的创建,这时Eclipse开发平台左边的导航器中显示了刚才创建的项目“HelloAndroid”。如果没有出现导航器,则可以通过单击“Window”→“Show View” →“Package Explorer”菜单命令来显示导航器,如图2-16所示。

到这里,HelloAndroid项目已经创建好,而且这个项目是由我们前面安装的ADT插件自动生成,所以不用编写代码即可运行。下面我们将讲述如何在模拟器中运行刚刚创建的HelloAndroid项目。

2.3.2  运行HelloAndroid及模拟器的使用

上面我们已经利用ADT插件通过Eclipse创建好了第一个Android项目,而且没有编写任何代码,我们很想看看运行之后的结果!不要着急,在模拟器中运行该应用之前,有必要了解一下模拟器的使用和配置。

从Android 1.5开始引入了AVD(Android Virtual Device)这个概念。AVD是一个经过配置的模拟器。在创建AVD时可以配置的选项有:模拟器影像大小、触摸屏、轨迹球、摄像头、屏幕分辨率、键盘、GSM 、GPS、Audio录放、SD卡支持、缓存区大小等。配置Android模拟器的具体步骤如下所示。

(1)首先打开“Android SDK and AVD Manager”,如图2-17所示。

                


16  
17

  

      图2-16  显示项目管理器             图2-17  Android SDK and AVD Manager菜单

(2)点击左边的“Virtual Devices”选项,再点击右边的“New…”按钮,新建一个AVD。

(3)在“Name”标签处填写AVD的名字,在“Target”标签处选择API等级,在“Size”标签处填写要创建的SD卡的大小,在“Skin”标签中设置模拟器的风格,如图2-18所示。

(4)到这里,我们便可以运行第一个Android项目了吗?还是不行,还需要配置模拟器运行的AVD。操作步骤为:点击“Run”,选择“Run Configurations”菜单命令,打开“Run Configurations”对话框,如图2-19所示。

(5)双击“Run Configurations”对话框左边的导航器中的“Android Application”菜单命令,创建一个Android项目运行配置。在右边的“Name”文本框中输入 Android项目运行配置的名字(HelloAndroid),在“Android”选项卡中的“Project”文本框中输入要运行的Android项目,同样可以点击右边的“Browse…”按钮来选择Android项目,如图2-20所示。
 


18

 
  图2-18  创建AVD

19
 
  图2-19  运行配置界面

20

  图2-20  配置要运行的HelloAndroid项目


(6)点击“Target”选项卡,选择“Automatic”单选框,然后在AVD列表框中选择我们刚才创建的AVD,如图2-21所示。
 


21

 
   图2-21  制定运行HelloAndroid项目的AVD

(7)点击“Run”按钮,这样便可以运行HelloAndroid项目了,不过Android模拟器启动非常慢,慢慢等吧。但是Android的模拟器做得非常漂亮,终于可以看到第一个Android项目的运行效果了,如图2-22所示。

22         23

图2-22HelloAndroid项目在模拟器中的运行效果   图2-23 Android模拟器显示中文界面


从Android SDK 1.5版本开始,Android模拟器开始支持中文了,也内置了中文输入法(谷歌拼音输入法),下面我们就将模拟器改为中文环境。操作步骤为:启动Android模拟器,进入Android模拟器菜单,选择“Settings”菜单项,开打“Settings”菜单,选择“Locale&text”菜单项,打开“Locale&text”菜单,依次选择“Select locale”项和“Chinese(China)”项,这样就设置为中文了,然后返回桌面,如图2-23所示。

上文我们使用ADT插件在Eclipse开发工具中创建了AVD及设置模拟器等操作,同样可以在命令行模式下完成上面的操作。


扩展学习

大家已经看到了Android的模拟界面了,这款模拟器功能非常齐全,电话本、通话等功能都可正常使用(当然不是真的从模拟器中打电话)。甚至其内置的浏览器和Google Maps都可以联网。用户可以使用键盘输入,鼠标点击模拟器按键输入,甚至还可以使用鼠标点击、拖动屏幕进行操纵。我们在开发项目时,这个模拟器完全可以满足我们测试的需求。下面我们列举一些常用的模拟器操作。

*  列出模拟器类型:android list targets。

*  创建模拟器:android create avd –target 2 –name cupcake,cupcake为新建模拟器的名字。

*  列出自己创建的模拟器:android list avd。

*  切换模拟器样式:在创建命令后面加上 “–skin QVGA”即可。切换样式:Windows操作系统按F7键即可。

*  删除模拟器:android delete avd –name cupcake,cupcake为删除的模拟器的名字。

*  指定用什么模拟器启动:emulator -debug avd_config -avd cupcake,cupcake为模拟器的名字。

*  将apk文件安装到Android模拟器。操作步骤为:首先启动Android模拟器,然后打开命令行对话框,进入命令行模式。在命令行模式下进入Android SDK安装目录下面的tools文件夹,输入“adb install c:/ poker80.apk”(c:/ poker80.apk是要安装的文件的路径),这样便可以将apk文件安装到模拟器上,如图2-24所示。
 
24

 
    图2-24  安装apk文件到模拟器

*  卸载模拟器中的apk文件。操作步骤为:首先启动Android模拟器,进入命令行模式。在命令行模式下进入Android SDK安装目录下面的tools文件夹,然后在命令行处依次输入“adb  shell”、“cd  data”、“cd  app”、“ls”(主要是针对不知道包下面的文件的情况,可以用ls命令列表显示出来)、“rm com.fungsing.poker80.apk”命令(“com.fungsing.poker80.apk.apk”是你要卸载的apk包),如图2-25所示。


25

 
   图2-25  从Android模拟器卸载apk文件

2.3.3  调试HelloAndroid

在Eclipse开发工具中调试程序的方法很多,使用Eclipse调试Android程序时需要注意一些细节上的问题。许多刚接触Android的开发者,在调试Android程序时总是不能迅速地找到程序的错误所在,Eclipse+ADT的开发环境中没有直接跟踪对象内容的方法,但是我们可以使用Google提供的ADT插件DDMS(Dalvik Debug Monitor Service)在Eclipse上轻松地调试Android程序。DDMS为我们提供了很多功能,例如:测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息,Logcat,广播状态信息,模拟电话呼叫,接收SMS,虚拟地理坐标等等,下面我们通过DDMS来调试我们的HelloAndroid项目。

(1)将Eclipse开发工具的工作界面切换到DDMS标签。首先确定Eclipse开发工具右上角是否有“DDMS”标签,如果有,则直接点击该标签即可切换到DDMS工作界面,如图2-26所示。如果没有,则点击“Open Perspective”按钮,选择“Other…”命令按钮,打开“Open Perspective”对话框,如图2-27所示。在“Open Perspective”对话框中选择“DDMS”选项,然后点击“OK”按钮,如图2-28所示。

 

26      27
 
   图2-26 DDMS工作界面切换   图2-27  打开视图布局显示操作

 



28

 
   图2-28 视图布局选择框

(2)在“DDMS”界面中选择“Devices”标签,查看其菜单的功能,可以看到Debug Process(调试进程)、Update Threads(更新线程)、Update Heap(更新堆)、Cause GC(引起垃圾回收)、Stop Process(停止进程)、Screen Capture(屏幕截图)、Reset adb(重启Android Debug Bridge)菜单选项,如图2-29所示。

从图2-29中可以观察到Android程序运行时的各种状态,比如进程信息、线程分析、堆内存的占用,结束一个进程等。当然,这些操作都是在DDMS框架下进行的,日常开发的程序是无法执行调用的。如果adb调试桥运行不稳定,可以选择“Reset adb”来重新启动“adb.exe”进程。下面我们介绍如何使用DDMS的“Logcat”来调试Android程序,步骤如下:

(1)“Logcat”通过“android.util.Log”类的静态方法来查找错误和打印系统日志消息。它是一个进行日志输出的API,我们在Android 程序中可以随时为某一个对象插入一个Log,然后在DDMS中观察Logcat的输出是否正常。android.util.Log常用的方法有以下5个:

*  Log.v(String tag, String msg);

*  Log.d(String tag, String msg);

*  Log.i(String tag, String msg);

*  Log.w(String tag, String msg);

*  Log.e(String tag, String msg)。

 

29

   图2-29 DDMS操作菜单


这5种方法的首字母分别对应VERBOSE、DEBUG、INFO、WARN、ERROR。当利用DDMS进行调试时,它们的区别并不大,只是显示的颜色不同,可以控制要显示的某一类错误,一般如果使用“断点”方式来调试程序,则使用Log.e比较合适。但是根据规范建议Log.v、Log.d信息应当只存在于开发过程中,最终版本只可以包含Log.i、Log.w、Log.e这三种日志信息。下面我们对“HelloAndroid”程序进行调试,首先修改“HelloAndroid.java”如代码清代2-1所示。我们在代码中加入了需要输出的日志信息。
 
代码清单2-1  第2章/HelloAndroid/src/com/yarin/Android/HelloAndroid/HelloAndroid.java

/* 定义TAG标签,这样可以很好地区分打印出来的Log */
private static final String TAG = "HelloAndroid";
public void onCreate(Bundle savedInstanceState)
{
 super.onCreate(savedInstanceState);
 /* 打印出不同的Log信息 */
 Log.v(TAG,"VERBOSE");
 Log.d(TAG,"DEBUG");
 Log.i(TAG,"INFO");
 Log.w(TAG,"WARN");
 Log.e(TAG,"ERROR");
 setContentView(R.layout.main);
}
 
(2)点击“Run”→“Debug”菜单命令,进入调试模式,如图2-30所示。

(3)切换到“DDMS”界面,点击“Logcat”标签,即可查看我们刚刚在程序中打印的Log信息。用不同颜色表示了不同等级的信息,这样就可方便地对程序进行跟踪,使得调试Android程序更加方便。


30

 
    图2-30 调试菜单命令

在调试Android程序时,同样可以通过设置断点的方式来调试程序。在启动应用程序进行调试时,Eclipse 会自动切换到 Debug 透视图。毫无疑问,最常见的调试步骤是设置断点,这样可以检查条件语句或循环内的变量和值。要在 Java 透视图的 Package Explorer 视图中设置断点,双击选择的源代码文件,在一个编辑器中打开它。遍历代码,将鼠标放在可疑代码一行的标记栏(在编辑器区域的左侧)上,双击即可设置断点,如图2-31所示。


注意  最好不要将多条语句放在一行上,因为会无法单步执行,也不能为同一行上的多条语句设置行断点。

一旦找到错误发生的位置,你可能想知道在程序崩溃之前它在做什么。一种方法是单步执行程序的每行语句,直到运行到可疑的那一行。有时候最好只运行一段代码,在可疑处停止运行,检查数据。另一种方法是声明条件断点,断点在表达式值发生变化时触发。如图2-32所示,我们设置条件“savedInstanceState == null”,当满足这个条件时,程序就会挂起。除此之外,在输入条件表达式时,也可以使用代码帮助。为了在 Debug 透视图的编辑器中计算表达式的值,选择设置了断点的那行代码,在上下文菜单中,通过 Ctrl+Shift+I 或右键单击你感兴趣的变量并选择 Inspect 选项。在当前堆栈框架的上下文中会计算表达式的值,在 Display 窗口的 Expressions 视图中会显示结果。
 

31

    图2-31  设置“断点”
  

  
32

    图2-32  设置条件断点

要在 Debug 视图中挂起执行线程,选择一个运行线程,单击 Debug 视图工具栏中的 Suspend。该线程的当前调用堆栈就会显示出来,当前执行的代码行就会在 Debug 透视图中的编辑器中高亮显示。挂起一个线程时,将鼠标放在 Java 编辑器中的变量上,该变量的值就会在一个小的悬停窗口中显示出来。此时,该线程的顶部堆栈框架也会自动选中,其中的可视变量也会在 Variables 视图中显示出来,可以通过单击 Variables 视图中合适的变量名来检查变量。

以上列举了一些在Eclipse编辑器中常用的调试方式,当然调试的方式很多,读者同样可以根据自己的需要选择不同的方式进行调试。希望读者能够根据不同的错误采取不同的方式进行调试,使错误能快速地出现在眼前。

2.4  小结

本章主要对Android应用开发的前期工作进行了整理,即Android开发工具的准备、环境的搭建及配置,最后为了测试我们的环境安装是否正确,写出了一个最经典的HelloAndroid程序。同时,了解了Android平台如何调试程序,以辅助我们后期能够快速开发出Android应用。本章是Android应用开发的基础,大家好好把握,下面我们将正式对Android进行系统学习。
 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132270.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ArrayList中的toArray[通俗易懂]

    ArrayList中的toArray[通俗易懂]ArrayList提供了一个将List转为数组的一个非常方便的方法toArray。toArray有两个重载的方法:1.list.toArray();2.list.toArray(T[] a);对于第一个重载方法,是将list直接转为Object[]数组;第二种方法是将list转化为你所需要类型的数组,当然我们用的时候会转化为与list内容相同的类型。 

  • rc522读卡器电路_stm32烧录工具

    rc522读卡器电路_stm32烧录工具在写这篇文章之前有写过一篇有关于PN532的文章,RC522与PN532在使用上都可以用来读写我们之前用的M1的IC卡,并且两款芯片有着同样都是应用于13.56MHz的非接触式通信芯片等诸多共通之处,查阅网上资料对于两者的区别个人认为RC522属于RFID,而PN532属于NFC,在功能上PN532包含了RC522的所功能(个人愚见),并且对于大部分需要量产使用或者学生党来说…

  • Java程序main方法执行流程

    Java程序main方法执行流程Java程序main方法执行流程当我们编写完java源代码程序后,经过javac编译后,执行java命令执行这个程序时,是怎么一步步的调用到我们程序中的main方法的呢?今天通过查看OpenJdk的源码来揭开它的神秘面纱。java命令是在安装jre/jdk时配置到系统环境路径中去的,执行java命令时会找到bin目录下的java可执行程序,并将我们编译后的java程序类名传递进去就可以执行了。…

  • PyTorch实现的ResNet50、ResNet101和ResNet152

    PyTorch实现的ResNet50、ResNet101和ResNet152PyTorch实现的ResNet50、ResNet101和ResNet152importtorchimporttorch.nnasnnimporttorchvisionprint("PyTorchVersion:",torch.__version__)print("TorchvisionVersion:",torchvision.__version__)

  • ASP.NET项目开发详解

    ASP.NET项目开发详解#ASP.NET项目开发详解###1ASP.NET开发基础####1.1认识网页和网站#####1.1.1网页#####1.1.2网站####1.2网站开发基础#####1.2

  • Word修改默认字体

    Word修改默认字体在Win10的最近一次更新后,发现我的office365默认字体都给我改成等线,什么鬼,以前都是宋体,现在这个还真的不习惯,就动手修改默认字体,设置如下: 1、在word空白处点击鼠标右键,选择字体。 2、在弹出框设置样式(字体、大小等),设置完成之后点击设置默认值3、选择如下,点击确定即可。后面再创建word就默认是设置的字体以及大小。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号