这半个月一直在学习Android方面的知识,对Android开发有了一个基本的认识,学会了Android studio的基本操作。

    在建立第一个Android studio项目时,我遇到了很大的阻碍,像这种问题ERROR: Cause: unable to find valid certification path to requested target等等,我以为会像安装ecplise时那样卡住,每当解决一个问题就会冒出一个新的问题,后来我放平了心态,平心静气地去寻找它的原因,百度了各种方法,像设置代理等等方法,再后来我知晓了这大概是网络问题。在暑假搞ecplise时就是因为家里的wifi并不能访问它的网站而安装失败,后来我就用自己的流量试了试,这个无法连接的问题就解决了,之后我又注释掉了junit,才正常构建出第一个hello world,正如在ecplise安装过程一样,这几天时间使我对Android studio更加熟悉,为后续的学习开辟道路。

    在解决完它的构建问题后,我便全身心投入到了Android学习中去,首先,我花了两天时间熟悉了各类文件的位置,并学习了线性布局和相对布局两种基础的布局,了解到了两种布局的各种属性,像height、width、orientation、below、background等等,对控件布局有了基本认识。在我看来,线性布局便是控件沿着横向或纵向排列,而相对布局则更复杂一点,它以每个控件地相对位置进行布局。

    之后,我又学习了TextView、Button和EditText,首先学习了TextView的各种属性,学会了通过singleLine、ellplize、marqueeRepeatLimite、focusable、focusableInTouchMode设置文字的跑马灯效果,学习了如何通过xml文件制作控件的各种背景,通过corner和riple等属性设置按钮的各种效果,通过hint设置背景字体,制作了一个简单的登录界面,可以给按钮加一个简单的监听事件,弹出一个Toast。

后来两天,我又学习了RadioButton和CheckBox,学会了监听选取事件,并会设置它的各种样式,

学会了通过ImageView加载图片,通过引用glide包下的Glide.with(activity).load();加载网络图片资源。

后来,我又学习了各种视图:列表视图,网格视图,滚动视图,循环视图,网络视图等。

视图这里需要用到适配器Adapter管理布局,写一个layout作为单元布局,通过iflater填充布局,在Adapter中获取单元layout,并对数量和内容进行管理,网格视图可对行列数进行设置,而列表视图只能设置单行或单列。

ScrollView和HorScrollView中只能有一个子控件,所以在子控件中写一个布局在布局中写控件实现视图的横向滚动和竖向滚动。

WebView使用前要先在manifest声明网络权限<uses-permission android:name="android.permission.INTERNET" />,和其他各种权限

wv.getSettings().setJavaScriptEnabled(true);

wv.getSettings().setAllowFileAccess(true);
wv.getSettings().setAllowContentAccess(true);
wv.setWebViewClient(new WebViewClient());

通过.load加载资源

对于RecyclerView暂时还不是很理解。但了解了它的简单用法,了解到通过RecyclerView实现水平视图、列表视图和瀑布流视图。

之后,我又对Toast进行了学习。通过setGravity设置弹出位置,设置弹出时间,弹出一个view等。

通过showToast方法解决时间叠加问题

public static void showToast(Context context, String msg, int Length,  int gravity) {
    if (toast == null) {
        toast=Toast.makeText(context, msg, Length);
    } else {
        toast.setText(msg);
    }
    if (gravity!=0)
    toast.setGravity(gravity,0,0);
    toast.show();
}

之后又学会实现各种dialog,了解到dialog的各种方法。

前两天,我又对ProgressBar、自定义dialog和PopWindow进行了学习,实现了进度条的各类样式,包括通过drawable xml和style实现自定义style的进度条样式,通过handler和runable实现进度条信息传递和加载以及ProgressDialog的实现。

自定义dialog:通过自定义的layout画出布局

,在CustomDialog类中实现settitle,setmessage等各种方法,加上监听接口实现自定义dialog。

PopWindow的实现

View view=getLayoutInflater().inflate(R.layout.layout_pop,null);
popupWindow=new PopupWindow(view,button.getWidth(),4*button.getHeight(),true);
//可取消
popupWindow.setOutsideTouchable(true);
popupWindow.showAsDropDown(button);

Android Studio阶段性学习总结_1的更多相关文章

  1. Android Studio安卓学习笔记(二)Android项目结构

    上一篇代码,我们学习了Android的功能以及如何用Android Studio开发第一个安卓程序.下面就要介绍Android项目结构.为日后学习打基础. 一:Android项目结构 打开MyFris ...

  2. [Android Studio] 按钮学习

    Android Studio 按钮 1. 添加一个按钮 新建一个 Blank Project 之后, 在 activity_main.xml: 中添加一个按钮, 可以使用design 模式来添加,: ...

  3. Android Studio NDK 学习之接受Java传入的字符串

    本博客是基于Android Studio 1.3 preview版本,且默认你已经安装了Android SDK, Android NDK. 用Android Studio新建一个工程叫Prompt,其 ...

  4. Android Studio NDK 学习之接受Java传入的Int数组

    本博客是基于Android Studio 1.3 preview版本,且默认你已经安装了Android SDK, Android NDK. 用Android Studio新建一个工程叫AndroidJ ...

  5. Android Studio安卓学习笔记(一)安卓与Android Studio运行第一个项目

    一:什么是安卓 1.Android是一种基于Linux的自由及开放源代码的操作系统. 2.Android操作系统最初由AndyRubin开发,主要支持手机. 3.Android一词的本义指“机器人”, ...

  6. Android Studio开发学习 - 1. 添加Activity

    1. 项目上点右键,New -> Activity -> Blank Activity 这将生成Activity的 Layout.Class .和相关的配置信息(在AndroidManif ...

  7. Android Studio安卓学习笔记(三)Android用户界面的设计布局与组件(一)用户界面布局设计(1)

    当我们创建了一个安卓项目后,我们会发现真正建立一个完善的安卓项目并不是想象的那么容易.其实和设计GUI可视化界面一样,开发安卓也需要考虑很多方面,主要考虑的还是界面布局和需要的组件. 一:Androi ...

  8. Android Studio 学习 - 程序安装

    痛定思痛,从今天开始专心学习AndriodStudio.希望以此为契机,把Java学扎实.更希望自己能坚持下去,不要半途而废. 记录一些日常的工作以及碰到的问题,权当勉励自己.荀子曰:吾尝终日而思矣, ...

  9. 转载:Android Studio 快捷键

    Android Studio使用技巧系列教程(一) 分类: android studio2015-07-08 10:04 4774人阅读 评论(6) 收藏 举报 android开发ideandroid ...

随机推荐

  1. MarkdownPad2 安装以及出现的错误(This view has crashed)

    在这里首先感谢 堃堃5love 的解决办法 原文链接:https://blog.csdn.net/kunkun5love/article/details/79495618 声明:写这个是为了以后遇见问 ...

  2. RX.js6变化

    RX.js变化 RxJS 6主要用于Angular应用程序,从Angular 6开始,它是一个强制依赖. 与RxJS版本5相比,RxJS 6(或更高版本)引入了两个重要更改: 1. import的导入 ...

  3. cookie的设置与取值

    设置cookie function cookie(key, value, options) { let days let time let result // A key and value were ...

  4. Zookeeper机制

    顾名思义 zookeeper 就是动物园管理员,他是用来管 hadoop(大象).Hive(蜜蜂).pig(小 猪)的管理员, Apache Hbase 和 Apache Solr 的分布式集群都用到 ...

  5. 搭建Linux(Ubuntu)系统下的Differential Datalog运行环境

    DDlog is a bottom-up, incremental, in-memory, typed Datalog engine. It is well suited for writing pr ...

  6. 思科路由器、交换机配置Console 线线序 (亲测可以)

    网上有许多标准console线配置线序,在配置思科网络设备时都是不能用的,因为思科的console线序是专用的, 如下 水晶头侧 线序 B 白橙,橙,白绿,蓝 ,白蓝,绿,白粽,棕 对应串口侧线序 1 ...

  7. ts中的泛型

    /** * 泛型:软件工程中,我们不仅要创造定义良好的API,同时也要考虑可重用行,组件不仅能 * 够支持当前的数据类型,同时也能够支持未来数据类型. * 通俗理解:泛型就是解决类.接口.方法的复用性 ...

  8. JS的基本概念和数据类型

    什么是 JavaScript 语言 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ ta ...

  9. M5310-A 版本

         模块外表            型号                           BAND                          M5310-A MBRH0S04 +NB ...

  10. jquery ajax简单书写

    占时无法显示该内容,请稍后再试 $.ajax({ url:"http://v.juhe.cn/weather/index", data:{cityname:"苏州&quo ...