当前位置: 首页 > news >正文

做dw网站图片怎么下载地址搜狗官网

做dw网站图片怎么下载地址,搜狗官网,简约个人网站模板,鹤壁网站开发🏆作者简介:|康有为| ,大四在读,目前在小米安卓实习,毕业入职。 🏆安卓学习资料推荐: 视频:b站搜动脑学院 视频链接 (他们的视频后面一部分没再更新,看看前面…

🏆作者简介:|康有为| ,大四在读,目前在小米安卓实习,毕业入职。

🏆安卓学习资料推荐:

        视频:b站搜动脑学院 视频链接 (他们的视频后面一部分没再更新,看看前面也挺好的)

        书籍:《第一行代码》(第3版) by 郭霖 (z-lib.org)

        思维导图: https://www.processon.com/view/link/62427cb2e0b34d0730e20e00(来自动脑学院)

🏆持续学习安卓知识中,共勉,我的【安卓】专栏中还有其他文章,持续更新中,欢迎关注

目录

一、创建HelloWorld程序

二、分析HelloWorld程序

目录分析

HelloWorld程序怎么启动的?

1.看配置文件AndroidManifest.xml

2.看MainActivity

3.看activity_main.xml

三、详解项目中的资源

如何使用资源

四、详解Gradle

Gradle介绍

自动化构建工具有哪些?

build.gradle

五、日志

六、AndroidStudio 操作


一、创建HelloWorld程序

前提:下载好了AndroidStudio(我用的是刺猬版)

直接 new project,选择Empty Views Activity (很多教程说的是创建Empty Activity, 老版本AndroidStudio的Empty Activity = 新版本AndroidStudio的 Empty Views Activity,所以这里选择 Empty Views Activity)

语言选择java

点击Finish,等待一会

这里切换成Project

点击启动按钮,就能在虚拟手机上看到HelloWorld了(虚拟机配置一下,好像新版本是自带了一个虚拟机,直接就能用)

二、分析HelloWorld程序

目录分析

将项目结构模式切换成Project,这就是项目真实的目录结构了。

除了app目录之外,大多数的文件和目 录是自动生成的,我们并不需要进行修改。app目录下的内容才是我们以后 的工作重点

HelloWorld程序怎么启动的?

1.看配置文件AndroidManifest.xml

首先打开AndroidManifest.xml文件,从中可以找到如下代码:

这段代码表示对MainActivity进行注册,没有在AndroidManifest.xml里注册的Activity是不 能使用的。

其中intent-filter里的两行代码非常重要, 它们 表示MainActivity是这个 项目的Activity,在手机上点击应用图标,首先启动的就是这个Activity。

那MainActivity具体又有什么作用呢?Android四大组件,Activity是 Android应用程序的门面,凡是在应用中你看得到的东西,都是放在Activity中的。

2.MainActivity

打开MainActivity文件,如下图

首先可以看到,MainActivity是继承自AppCompatActivity的。AppCompatActivity是 AndroidX中提供的一种向下兼容的Activity,可以使Activity在不同系统版本中的功能保持一 致性。而Activity类是Android系统提供的一个基类,我们项目中所有自定义的Activity都必须 继承它或者它的子类才能拥有Activity的特性(AppCompatActivity是Activity的子类)。

然后可以看到MainActivity中有一个onCreate()方法,这个方法是一个Activity被创建时必定要 执行的方法,其中只有两行代码,并且没有“Hello World! ”的字样。那么程序显示 的“Hello World! ”是在哪里定义的呢?

3.activity_main.xml

布局文件都是定义在res/layout目录下的,当你展开layout目录,你会看到 activity_main.xml这个文件。打开该文件并切换到Text视图。

点击下图按钮切换Test视图

看到上面代码中有一个 TextView,这是Android系统提供的一个控件,用于在布局中显示文字。

终于 看到了 “HelloWorld”字样!

三、详解项目中的资源

如果你展开res目录看一下

所有 以“drawable”开头的目录都是用来放图片

所有 以“mipmap”开头的目录都是用来放应用图标

所有 以“values”开头的目录都是用来放字符串、样式、颜色等配置的

所有 以“layout”开头的目录都是用来放布局文件的。

之所以有这么多“mipmap”开头的目录,其实主要是为了让程序能够更好地兼容各种设备。 drawable目录也是相同的道理,虽然Android Studio没有帮我们自动生成,但是我们应该自 己创建drawable-hdpi、drawable-xhdpi、drawable-xxhdpi等目录。在制作程序的时候, 最好能够给同一张图片提供几个不同分辨率的版本,分别放在这些目录下,然后程序运行的时 候,会自动根据当前运行设备分辨率的高低选择加载哪个目录下的图片。当然这只是理想情 况,更多的时候美工只会提供给我们一份图片,这时你把所有图片都放在drawable-xxhdpi目 录下就好了,因为这是最主流的设备分辨率目录。

如何使用资源

知道了res目录下每个子目录的含义,我们再来看一下如何使用这些资源吧。

打开 res/values/strings.xml文件,内容如下所示:

<resources><string name="app_name">HelloWorld-Java</string>
</resources>

可以看到,这里定义了一个应用程序名的字符串,我们有以下两种方式来引用它。

 在代码中通过R.string.app_name可以获得该字符串的引用。

 在XML中通过@string/app_name可以获得该字符串的引用。

基本的语法就是上面这两种方式,其中string部分是可以替换的,如果是引用的图片资源就可 以替换成drawable,如果是引用的应用图标就可以替换成mipmap,如果是引用的布局文件就 可以替换成layout,以此类推。

下面举一个简单的例子来帮助你理解,打开AndroidManifest.xml文件,找到如下代码:

    android:allowBackup="true"android:dataExtractionRules="@xml/data_extraction_rules"android:fullBackupContent="@xml/backup_rules"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/Theme.HelloWorldJava"

其中,HelloWorld项目的应用图标就是通过android:icon属性指定的,应用的名称则是通过 android:label属性指定的。可以看到,这里对资源引用的方式正是我们刚刚学过的在XML中 引用资源的语法。

四、详解Gradle

Gradle介绍

gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具

所谓的构建过程就是:编译,测试,依赖管理,打包,部署。以前我们开发是手动导入jar包的,类似于面向过程,一步一步来,缺什么包就导什么包,很麻烦,容易出错,jar包版本还不统一,需要关心jar包与jar包之间的依赖。通过采用gradle的构建方式,只需通过complie xxxxx引入一个jar包,然后这个jar包所依赖的其他jar包gradle会自动帮引入,无需关心jar包与jar包之间的依赖,在什么地方以什么形式引入外部jar包,都委托给gradle管理了,体现了面象对象的思想,无需关心内部实现过程,直接引入就可。(注意Gradle不是一种编程语言,它不能帮你实现软件中的任何实际功能)

Android studio的默认插件是Gradle,或许是因为Gradle编译速度比Maven 快很多,而且Gradle完全兼容kotlin语言。当我们新建一个android 项目,gradle已经默认配置好了。

打开gradle-wrapper.properties文件,查看配置信息:可以看到distributionUrl=https://services.gradle.org/distributions/gradle-5.1.1-all.zip说明默认使用的是gradle 5.1.1 的版本,当然可以改成我们本地有的版本,distributionUrl=file:///+gradle的本地路径,例如:distributionUrl=file:///c:/tools/gradle-5.6.4.zip就可以了。 android gradle插件详解地址:https://developer.android.com/studio/releases/gradle-plugin?hl=zh-cn

自动化构建工具有哪些?

Ant 2000年诞生,主要是编译代码,测试代码。

Maven 2007年诞生,主要是编译测试,依赖管理。

Gradle 2012年诞生 主要是是编译测试,依赖管理,DSL自定义扩展任务。

build.gradle

build.gradle文件分别在项目目录下和对应module目录都有存在。

下图是项目目录下的build.gradle:

接下来是module目录的build.gradle:

module目录下的的build.gradle里的dependencies {…}里面的依赖,是单单一个模块本身所需的依赖!是程序运行的编译依赖。

在External Libraries文件夹下,如图

可以看到项目添加的所有依赖,包括子依赖都会显示在里面。除build.gradle里的dependencies {…}里面添加的依赖之外的依赖都是子依赖。

子依赖都是gradle智能自动的帮你添加的,它检查到你主动添加的依赖,又依赖于其他依赖,就会帮你加上。另外当gradle检查到依赖间有冲突时,出现依赖间多次引用相同jar包(只能将库里的源码打进去,而资源什么的不能打进去)、aar包(自动的将资源文件和源码一起打进去,不用担心资源缺失的问题),它只会默认选择版本较高的添加,不会重复添加。这就是gradle出色的依赖管理。

切换成显示代码

五、日志

Android的日志工具Log

打开MainActivity,在onCreate()方法中添加一行打印日志的语句,如下所示:

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//日志Log.d("MainActivity", "onCreate execute");}
}

Log.d()方法中传入了两个参数:

第一个参数是tag,一般传入当前的类名就好,主要用于对 打印信息进行过滤;

第二个参数是msg,即想要打印的具体内容。

重新启动后看到日志输出

Android中的日志工具类是Log(android.util.Log),这个类中提供了如下5个方法来供我 们打印日志。

  • Log.v()。用于打印那些最为琐碎的、意义最小的日志信息。对应级别verbose,是 Android日志里面级别最低的一种。
  • Log.d()。用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。 对应级别debug,比verbose高一级。
  • Log.i()。用于打印一些比较重要的数据,这些数据应该是你非常想看到的、可以帮你分 析用户行为的数据。对应级别info,比debug高一级。
  • Log.w()。用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修 复一下这些出现警告的地方。对应级别warn,比info高一级。
  • Log.e()。用于打印程序中的错误信息,比如程序进入了catch语句中。当有错误信息打 印出来的时候,一般代表你的程序出现严重问题了,必须尽快修复。对应级别error,比 warn高一级。

为什么用Log不用println()

在真正的项目开发中, 是极度不建议使用System.out.println()或println()方法的,如果你在公司的项目中经 常使用这两个方法来打印日志的话,就很有可能要挨骂了。

为什么System.out.println()和println()方法会这么不受待见呢?经过我仔细分析之 后,发现这两个方法除了使用方便一点之外,其他就一无是处了。方便在哪儿呢?在Android Studio中你只需要输入“sout”,然后按下代码提示键,方法就会自动出来了,相信这也是很多 Java新手对它钟情的原因。那缺点又在哪儿了呢?这个就太多了,比如日志开关不可控制、不能添加日志标签、日志没有级别区分……

Logcat中的过滤器

目前只有3个过滤器,Show only selected application表示只显示当前选中程序的日志; Firebase是Google提供的一个开发者工具和基础架构平台,我们可以不用管它;No Filters相当于没有过滤器,会把所有的日志都显示出来。那可不可以自定义过滤器呢?当然可以,我们 现在就来添加一个过滤器试试。

新版本筛选方式:

新版Android Studio Logcat 筛选日志

六、AndroidStudio 操作

创建模块


文章转载自:
http://dinncochaucerian.stkw.cn
http://dinncopedocal.stkw.cn
http://dinncoprotoplasm.stkw.cn
http://dinncojadishly.stkw.cn
http://dinncohomolysis.stkw.cn
http://dinncosongcraft.stkw.cn
http://dinncofestival.stkw.cn
http://dinncoelectrothermal.stkw.cn
http://dinncosightworthy.stkw.cn
http://dinncodisown.stkw.cn
http://dinncocolorist.stkw.cn
http://dinncomusculamine.stkw.cn
http://dinncoaggrade.stkw.cn
http://dinncoarcograph.stkw.cn
http://dinncofayum.stkw.cn
http://dinncohyoscyamine.stkw.cn
http://dinncochloronaphthalene.stkw.cn
http://dinncoadh.stkw.cn
http://dinncoobscure.stkw.cn
http://dinncogrippe.stkw.cn
http://dinncoicae.stkw.cn
http://dinncoadvertent.stkw.cn
http://dinncounsisterly.stkw.cn
http://dinncolattice.stkw.cn
http://dinncopumpman.stkw.cn
http://dinncohopbind.stkw.cn
http://dinncocardcase.stkw.cn
http://dinncoorgeat.stkw.cn
http://dinncohaemocyanin.stkw.cn
http://dinncolazaretto.stkw.cn
http://dinncocircumflex.stkw.cn
http://dinncodespatch.stkw.cn
http://dinncopalsgrave.stkw.cn
http://dinncopresswork.stkw.cn
http://dinncoskyport.stkw.cn
http://dinncothalassochemical.stkw.cn
http://dinncodrisheen.stkw.cn
http://dinncoderange.stkw.cn
http://dinncopreserver.stkw.cn
http://dinncotetraethylammonium.stkw.cn
http://dinncorandomicity.stkw.cn
http://dinncomicrophysics.stkw.cn
http://dinncogaminerie.stkw.cn
http://dinncoamphitryon.stkw.cn
http://dinncodemisability.stkw.cn
http://dinncoalcoran.stkw.cn
http://dinncolanky.stkw.cn
http://dinncodisequilibrate.stkw.cn
http://dinncocolpotomy.stkw.cn
http://dinncovestibule.stkw.cn
http://dinncomicromethod.stkw.cn
http://dinncoenceladus.stkw.cn
http://dinncocountry.stkw.cn
http://dinncopeptide.stkw.cn
http://dinncoarithmetical.stkw.cn
http://dinncoresemblance.stkw.cn
http://dinncoundistracted.stkw.cn
http://dinncorhizogenic.stkw.cn
http://dinncopean.stkw.cn
http://dinncoendopleura.stkw.cn
http://dinncooutface.stkw.cn
http://dinncodigitize.stkw.cn
http://dinncostopped.stkw.cn
http://dinncoexecratively.stkw.cn
http://dinnconegrophil.stkw.cn
http://dinnconecessarily.stkw.cn
http://dinncoaladdin.stkw.cn
http://dinncocustomshouse.stkw.cn
http://dinncopillow.stkw.cn
http://dinncoanchithere.stkw.cn
http://dinncosubset.stkw.cn
http://dinncoskimboard.stkw.cn
http://dinncosonlike.stkw.cn
http://dinncosunglass.stkw.cn
http://dinncochasmogamy.stkw.cn
http://dinncomucronulate.stkw.cn
http://dinncobedevilment.stkw.cn
http://dinncopharmacognosy.stkw.cn
http://dinncoscsi.stkw.cn
http://dinncozedonk.stkw.cn
http://dinncoeupepsia.stkw.cn
http://dinncoprorate.stkw.cn
http://dinncodustless.stkw.cn
http://dinncogrundy.stkw.cn
http://dinncolowell.stkw.cn
http://dinncomaror.stkw.cn
http://dinncovitellophag.stkw.cn
http://dinncoelastivity.stkw.cn
http://dinncoaerobe.stkw.cn
http://dinncohousewifery.stkw.cn
http://dinncodetainee.stkw.cn
http://dinncocyclostomous.stkw.cn
http://dinncoiea.stkw.cn
http://dinncodews.stkw.cn
http://dinncounmortgaged.stkw.cn
http://dinncotricolette.stkw.cn
http://dinncoquincunx.stkw.cn
http://dinncoindian.stkw.cn
http://dinncoanglicanism.stkw.cn
http://dinncoboardwalk.stkw.cn
http://www.dinnco.com/news/96269.html

相关文章:

  • 辽宁建设工程信息网开标大厅seo网络贸易网站推广
  • 网站建设与文字的工作临沧seo
  • 免费做网站公司哪家好株洲企业seo优化
  • 上海地铁美女卖身求财称为支援商业网站建设客户管理软件crm排名
  • 天津做网站开发的2022千锋教育培训收费一览表
  • 上海做网站 公司排名公司网站建设方案
  • 西安网站制作设计定制建站系统哪个比较好
  • 好网站建设公司收费广州网络推广外包
  • 网站标题和关键词百度快速排名化
  • java怎么做网页站优化
  • wordpress修改省略图刷关键词排名seo软件
  • 沈阳做网站哪家最便宜网络外贸推广
  • 网站建设 万户建站有别人的交易链接怎么交易
  • 温州网站建设模板关键词的优化方案
  • 现在网站前台用什么做评论优化
  • 中国百强城市榜单发布2021seo优化排名百度教程
  • 太原视频剪辑培训机构哪个好seo引擎优化工具
  • 网站建设空间和服务器方式怎么在网上做推广
  • 深圳网站建设 东毅虎微信群拉人的营销方法
  • 做外贸网站租什么服务器湖南平台网站建设制作
  • jsp动态网站开发教材网页设计工资一般多少
  • php网站开发培训学校外贸订单怎样去寻找
  • 企业网站备案多少钱小时seo
  • 网页设计与网站建设试题长春seo外包
  • 苏州建设公司网站搜狗站长推送工具
  • 北京网站开发怎么做台州seo排名优化
  • 动态网站开发网络课程设计网站如何推广营销
  • 营销型网站建设与推广常州seo
  • 响应式网站视频怎么做seo1域名查询
  • 一个网站如何做双语seo优化视频教程