android
文章平均质量分 69
IT老卢
这个作者很懒,什么都没留下…
展开
-
首页用RecylerView实现两栏布局
最终实现的效果如下:1、主窗口布局:主窗口就是需要显示RecylerView数据的窗口,后端对应的是一个Fragment。布局如下:<?xml version="1.0" encoding="utf-8"?><androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schema原创 2021-04-05 17:19:34 · 783 阅读 · 0 评论 -
android 使用retrofit2 请求springboot后端数据,返回嵌套的json数据
一、android studio 项目中引入retrofit2:在build.gradle文件下加入下面代码,然后点击同步项目的大象按钮: implementation "com.squareup.retrofit2:retrofit:2.6.1" implementation "com.squareup.retrofit2:converter-gson:2.6.1" implementation 'com.squareup.retrofit2:converter-jacks原创 2021-04-05 11:03:42 · 1362 阅读 · 0 评论 -
高级:jetpack组件
一、ViewModel1、第一个ViewModel用例到目前为止 ,业务代码都是写在activity中,但是这样activiy代码里太大了。ViewModel就是为了分担activity一部分代码。用于存储UI相关数据。也就是说UI看到的数据的相关变量应该写在ViewModel中。ViewModel的生命周期横跨activity的创建、旋转、finish生命周期。所以生命周期更长。当activity横屏时,activity会重建,数据会被销毁,数据放到ViewModel就不会丢失。所以比较好的编程规原创 2021-03-26 11:03:36 · 202 阅读 · 0 评论 -
10.网络服务
webview的简单使用要使用webview很简单,不过要在androidmainfest.xml声明权限。权限:<uses-permission android:name="android.permission.INTERNET"/>aictiviy代码:public class WebViewActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInst原创 2021-03-26 11:01:30 · 54 阅读 · 0 评论 -
9.服务
服务是什么服务是无需UI在后台运行的代码,所以会用到多线程。android服务并不是独立运行的,而是在app的进程中。android多线程编程android中,定义一个线程直接继承Thread即可。class MyThread extends Thread{ @Override public void run(){ //业务逻辑 }}new MyThread().start();也可以直接实现Runnable接口来定义一个线程class MyThre原创 2021-03-26 10:53:29 · 49 阅读 · 0 评论 -
7.跨程序共享
略简单说是通过其他程序开放的接口进行二次开发。比如其他程序数据库的查询等等。原创 2021-03-26 10:43:10 · 80 阅读 · 0 评论 -
6.数据持久化
数据持久化数据持久化是将数据存储到磁盘上. andrlid的存储话方案有两个,一个是文件的方式,另外一个是SQLite关系数据库.文件就是java的io流.我们关注的是SQLite.SQLite的创建与升级在android中,提供了一个SQLiteOpenHelper类来对数据库进行创建和升级.不过这个类是抽象的,他有四个重要的方法需要继承者实现.一个是onCreate(),一个是onUpgrade() 负责创建和升级.getReadableDatabase(),和getWritableDatab原创 2021-03-26 10:37:51 · 139 阅读 · 0 评论 -
5.广播
系统广播app可以接受系统、其他app发布的广播,来获取系统及其他程序的信息。比如电池、时区的变化等等,所以自己的app也可以发送广播,可见广播是跨进程的。广播的种类有两种:1.标准广播是异步广播,广播发出后,广播接受类基本能同时接收到.2.有序广播有序广播是个广播链,是同步接收的.接收是有顺序的,同一时间只能一个广播接收类,依次传递.动态注册:监听时间变化接收什么广播前,首先要注册,注册后才能接收。注册有两种方式,一种是代码动态注册,一种是通过在AndroidMainfest.xml静态注册原创 2021-03-26 10:36:13 · 49 阅读 · 0 评论 -
4.fragment碎片化
fragment是什么fragment类似于activity,也是个容器。比如在设计一个手机APP中,一个active中是个新闻列表,点击这个新闻,就打开新闻的详情active. 如果在平板也安装这个app,新闻列表的宽度会被自适应拉宽.如果安装到平板,左侧一部分是新闻列表,右侧是新闻详情就好了. fragment就是解决这个问题的.动态加载fragment每个fragment都有自己的UI.比如现在左侧是功能按钮,右侧一个空的布局. 点击左侧的按钮,右侧就加载不同的UI.具体步骤如下:1.创建原创 2021-03-26 10:30:15 · 108 阅读 · 0 评论 -
3.核心组件Activity
一.创建Activityaction的作用action是显示数据给用户.action是包含了UI和UI动作的代码.比如跳转,按钮单击事件等等.每个action都对应一个界面配置文件,布局文件存在res下面的layout目录下.onCreate代码创建号action后,可以看到有个onCreate代码.这里面就是编写与UI交互的主要方法.绑定UI配置在onCreate代码里加入setContenView(R.layout.布局名称)action的注册创建好action后,需原创 2021-03-26 10:28:58 · 82 阅读 · 0 评论 -
2.android布局及UI控件
布局0、约束布局1、线性布局(LinearLayout)常见属性以下属性为常见属性,除了最后一个。1、组件名称:+id/android:+id/name:代表声明一个新的元素android:id/name:代表直接使用以及存在的元素2、组件高宽:android:layout_widthandroid:layout_height1、属性值:wrap_content 代表实际内容尺寸match_parent 与父级元素尺寸fill_parent 填充整个父级尺寸2、属性值单位:原创 2021-03-26 10:24:06 · 591 阅读 · 0 评论