
Android
文章平均质量分 61
大肠包小肠|
学习和奔跑,至少要有一样在路上!
展开
-
Java内存区域(运行时数据区域)和内存模型(JMM)
https://www.cnblogs.com/czwbig/p/11127124.html转载 2021-12-20 16:44:08 · 107 阅读 · 0 评论 -
Android LiveData 详解及使用
文章目录一、`LiveData`是什么?二、`LiveData`的优点三、使用 `LiveData` 对象创建 `LiveData`对象观察 `LiveData` 对象更新 `LiveData`对象将 `LiveData` 与 Room 一起使用四、应用架构中的 `LiveData`五、扩展 `LiveData`六、转换 `LiveData`创建新的转换七、合并多个 `LiveData` 源七、合并多个 `LiveData` 源一、LiveData是什么?LiveData 是一种可观察的数据存储器类。原创 2021-12-20 13:48:58 · 13682 阅读 · 5 评论 -
Android ConstraintLayout 详解及示例
前言ConstraintLayout 可让您使用扁平视图层次结构(无嵌套视图组)创建复杂的大型布局。它与 RelativeLayout 相似,其中所有的视图均根据同级视图与父布局之间的关系进行布局,但其灵活性要高于 RelativeLayout,并且更易于与 Android Studio 的布局编辑器配合使用。ConstraintLayout 的所有功能均可直接通过布局编辑器的可视化工具来使用,因为布局 API 和布局编辑器是专为彼此构建的。 因此,您完全可以使用 ConstraintLayout 通过原创 2021-12-16 11:43:53 · 12316 阅读 · 0 评论 -
Android 布局通用属性gravity和layout_gravity的区别
android通用属性gravity、layout_gravity区别原创 2021-12-15 16:41:19 · 1878 阅读 · 0 评论 -
Android CountDownTimer 倒计时的使用
1.声明变量/** * 第一个参数:从调用start()开始,到计时结束的时间,也就是倒计时的总时间,单位为毫秒; * 第二个参数:倒计时间的隔时间,单位为毫秒; */private CountDownTimer cdTimer = new CountDownTimer(10*1000, 1000) { @Override public void onTick(long ...原创 2019-12-05 21:02:03 · 920 阅读 · 0 评论 -
android沉浸式页面实现
1.依赖dependencies { //沉浸式状态栏 // After AndroidX implementation ('com.github.niorgai:StatusBarCompat:2.3.3', { exclude group: 'androidx.appcompat:appcompat' exclude group: 'com.google....原创 2019-12-02 15:00:37 · 545 阅读 · 0 评论 -
一次性倒计时
1. 代码工具类public class BaseTimerTask extends TimerTask { private ITimerListener mITimerListener=null; public BaseTimerTask(ITimerListener iTimerListener) { this.mITimerListener = iTim...原创 2019-11-28 20:25:59 · 132 阅读 · 0 评论 -
使用Bundle在Activity之间传递数据(Activity之间数据传递)
当一个`Activity`启动另一个`Activity`时,常常会有一些数据需要传过去。对于`Activity`而言,进行数据交换很简单,只需要使用`Intent`,将我们需要传递的数据放入`Intent`中即可。原创 2019-11-20 11:56:23 · 2121 阅读 · 1 评论 -
okhttp3请求详解
1.同步get请求下载文件,打印其标题,并将其响应正文打印为字符串。响应体上的string()方法对于小型文档非常方便和有效。但如果响应体很大(大于1 mib),请避免string(),因为它会将整个文档加载到内存中。在这种情况下,更愿意将主体作为流处理。 private final OkHttpClient client = new OkHttpClient(); public ...原创 2019-10-30 19:29:06 · 851 阅读 · 0 评论 -
Android服务基础
服务概述 服务是一个应用程序组件,它可以在后台执行长时间运行的操作,并且不提供用户界面。另一个应用程序组件可以启动一个服务,即使用户切换到另一个应用程序,它也会在后台继续运行。此外,组件可以绑定到服务来与之交互,甚至可以执行进程间通信(IPC)。例如,服务可以在后台处理网络事务、播放音乐、执行文件I/O或与内容提供者交互。以下是三种不同类型的服务:...原创 2019-09-17 10:18:21 · 191 阅读 · 0 评论 -
Android textView 动态设置代码字号大小,支持单位选项 dp,sp or px
Android textView: setTextSize(TypedValue.COMPLEX_UNIT_PX,22); //22像素 setTextSize(TypedValue.COMPLEX_UNIT_SP,22); //22SP setTextSize(TypedValue.COMPLEX_UNIT_DIP,22);//22DIP通常我们使用字体大小使用的...原创 2019-02-12 10:21:47 · 1536 阅读 · 0 评论 -
Android通过原生APi获取所在位置的经纬度
本文介绍了Android通过原生APi获取所在位置的经纬度。 场景:新增一个功能,用户app主页后,将用户的经纬度通过一个接口返回给服务端,从而让服务器可以准确定位。步骤分析:权限问题 : Android 6.0之后新增动态权限,而获取获取经纬度坐标的权限如果你的app的(TargetVersion>=23)就需要动态获取了(当然也得在清单文件中设置)代码实现(具体请看下...原创 2018-08-02 13:41:41 · 1996 阅读 · 0 评论 -
警告对话框
需要实现DialogInterface.OnClickListener接口public class MainActivity extends Activity implements View.OnClickListener, DialogInterface.OnClickListener { private View btnShowDialog;@Override原创 2016-11-11 13:57:47 · 470 阅读 · 0 评论 -
按BACK键,弹出警告对话框
public class MainActivity extends Activity implements View.OnClickListener, android.content.DialogInterface.OnClickListener{ // 声明对话框工具 private AlertDialog exitDialog ;原创 2016-11-11 14:27:31 · 371 阅读 · 0 评论 -
Android四大组件——BroadcastReceiver广播接受者
BroadcastReceiver:广播接收者BroadcastReceiver是Android系统的核心组件之一!广播是一种通信方式,可以有1个发送方,和若干个(0~N个)接收方。广播这种通信方式在Android设备中,用于实现全设备间的通信!基础:发送广播与接收广播调用sendBroadcast(Intent)方法即可发送广播,在发送前,需要在Intent对象中封装Action属性,以表示广播的原创 2016-11-16 19:26:54 · 395 阅读 · 0 评论 -
Andorid 基础知识(一)
内容Android UIAndroid 核心组件Java / Android 线程Android 数据存储View在Android系统中,每个控件的本质都是一个Java类,即使通过XML文件设计软件的外观,在运行时,系统也会解析该XML文件,并通过XML文件的配置创建出一个个控件类的对象。View是Android的控件体系中,在继承链最顶端的类,即:所有的控件都是View的子孙类。View原创 2016-11-01 23:26:33 · 569 阅读 · 0 评论 -
自定义SeekBar的外观
1.在res\drawable文件夹,新建XML文件以配置SeekBar的外观,该文件的根节点需要选择为layer-list;2.在XML文件中,添加2个<item>子节点,且分别配置android:id属性值为@android:id/background和@android:id/progress,例如: <layer-list xmlns:android="http://schemas.andro原创 2016-11-17 20:43:11 · 881 阅读 · 0 评论 -
Android四大核心组件之Service:服务
Service:服务Service是Android系统的核心组件之一!它是由Android系统进行管理和维护的!Service是系统组件,所以,必须注册!而且,如果没有注册,并不会报错!!!当进程中存在正在执行的Service时,整个进程将被列为“服务进程”,此时进程的优先级将高于“后台进程”和“空进程”,则可以使得进程不是那么容易被系统清理!基于以上原则,如果需要执行某些耗时操作,则应该使用Ser原创 2016-11-15 13:04:02 · 766 阅读 · 0 评论 -
Android四大核心组件——Activity活动
ActivityActivity是Android系统的核心组件之一!由Android系统进行管理和维护!Activity表现为处理所有与UI相关的业务!Activity的生命周期在Android系统中,将Activity也划分出了不同的生命周期阶段,并且在不同的阶段会由Android系统去调用不同的方法,这些方法被称之为“生命周期方法”,共有7个:void onCreate() -> 当Act原创 2016-11-15 20:05:19 · 564 阅读 · 0 评论 -
使用Adapter更新列表
调用Adapter的notifyDataSetChanged()方法可以通知数据集合发生变化,则AdapterView会更新列表显示!在创建Adapter对象时,会使用到数据源(通常是List集合),则Adapter对象中会记录数据源对象的内存地址,假设是007,当需要列新列表时,需要先更新数据源,然后再调用notifyDataSetChanged()方法,但是,切记不可以对数据源的变量重新赋值!!原创 2016-11-23 19:04:09 · 503 阅读 · 0 评论 -
Android菜单——Menu
Menu:菜单在Android系统中,菜单的种类可以分为: 1. OptionsMenu:选项菜单 / 系统菜单 2. ContextMenu:上下文菜单OptionsMenu:选项菜单 / 系统菜单OptionsMenu是点击设备上的Menu键弹出的菜单。 在Activity中,通过重写onCreateOptionsMenu()实现创建OptionsMenu;1.【创建菜单-1:XML】原创 2016-11-24 10:20:04 · 595 阅读 · 0 评论 -
使用Intent传值
Intent的简单用法一、传值——>取值1.传值Intent intent=new Intent();intent.putExtra("extra", "这是页面一传来的值!");intent.setClass(Test_for_intentActivity.this, actpage2.class);startActivity(intent);2.取值:Intent intent=getIn原创 2016-11-17 00:18:52 · 278 阅读 · 0 评论 -
Linux基础命令
Linux基础命令(笔记)创建挂载点:mount卸载挂载点:umount权限设置:chmod是ROOT用户的提示符$,是普通用户的提示符 可以通过修改环境变量PROMPT_COMMAND来修改该值。1、Linux启动等级【 linit n 】² 0—系统停机状态² 1—单用户工作状态² 2—多用户状态(没有NFS)² 3—多用户状态(有NFS)...原创 2018-05-25 16:40:13 · 187 阅读 · 0 评论 -
Android 按键处理
Android连续按下2次Back键,退出应用程序。// 记录上次按下的时间 private long lastDownTime;@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) { // 判断当前按下的是不是BACK键 if (keyCode == KeyEvent.KEYCODE_BACK)原创 2016-11-11 11:14:50 · 300 阅读 · 0 评论