Android
文章平均质量分 56
leisure-ZL
这个作者很懒,什么都没留下…
展开
-
Android AIDL的简单使用
文章目录一、引言二、正文一、引言最近在学习巩固Framework的一些东西,学完BInder后接触到AIDL,尝试简单使用一下。期间也遇到一些问题,但都解决了,在此记录一下。本篇博客可以了解到:1.AIDL IPC的简单使用,本demo使用同一项目下的两个Module代表C端和S端,C端简单调用S端服务2.了解AIDL生成的java文件内容3.解决C端bindService失败的问题二、正文前提:创建两个模块作为两个进程:1、S端创建AIDL文件// IMyAidlInterface原创 2022-05-23 11:51:43 · 967 阅读 · 0 评论 -
Android 自定义下拉菜单的实现(基于PopupWindow+RecyclerView)
文章目录一、引言二、效果三、代码实现四、结语一、引言安卓自带的Spinner局限性较大,基本不能满足开发样式要求,当前又没有成熟的相关框架,所以决定自己使用PopupWindow实现一个下拉菜单二、效果三、代码实现布局:新建xml文件:layout_dropdown_menu<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/ap原创 2022-04-21 20:45:15 · 6147 阅读 · 1 评论 -
Android 下拉刷新框架[SmartRefreshLayout
官网:https://gitee.com/scwang90/SmartRefreshLayout非常强大的刷新框架,有很多样式可选,这里简单使用经典的第一步:添加依赖implementation 'com.scwang.smart:refresh-layout-kernel:2.0.3'implementation 'com.scwang.smart:refresh-header-classics:2.0.3'implementation 'com.scwang.smart:refresh原创 2021-11-18 17:28:30 · 4780 阅读 · 0 评论 -
Android BottomSheetDialog简单使用
第一步:新建一个dialog.xml布局,具体可以自己设计<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="80dp"> <TextView原创 2021-11-18 17:23:55 · 1429 阅读 · 0 评论 -
Andriod RecyclerView单选一个条目,其他条目恢复默认
需求:在RecyclerView中单选一个条目,一个条目字体改变,其他条目字体恢复。思路:每一个item中添加一个flag成员,0代表未被选中,1代表当前被点击item;在Adapter中添加以下代码:@Overridepublic void onBindViewHolder(@NonNull ViewHolder holder, int position) { ContactClassifyItem item = mItemList.get(position); if(ite原创 2021-11-18 17:18:31 · 275 阅读 · 0 评论 -
Android 椭圆发送框布局设计
效果图:xml布局: <LinearLayout android:layout_width="match_parent" android:layout_height="45dp" android:orientation="horizontal" android:id="@+id/btm" android:background="@color/white" android:gravity="center_原创 2021-11-18 17:11:04 · 728 阅读 · 0 评论 -
Android 沉浸式状态栏
在themes.xml文件中加入<item name="android:windowTranslucentStatus">true</item>可能会因为最小API的原因而飘红,不用管它。原创 2021-11-18 17:01:18 · 1125 阅读 · 0 评论 -
Android Tablayout+viewpager2 之位于页面上方悬浮的透明顶部栏
Tablayout+viewpager2 实现位于页面上方悬浮的透明顶部栏背景:使用tablayout+viewpager2实现顶部导航栏,大多博客使用的包裹 和 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"原创 2021-07-21 10:12:41 · 706 阅读 · 0 评论 -
Android 自定义主题去掉ActionBar Title
在自定义主题中加入 <item name="android:windowNoTitle">true</item> <item name="android:windowActionBar">false</item>因为兼容性问题,如果上述不起作用,可以试试 <item name="windowNoTitle">true</item> <item name="windowActionBar"原创 2021-07-16 15:00:48 · 144 阅读 · 0 评论 -
Android基础知识整理(四) 网络
四、网络HttpClientHttpClient是Apache开源组织提供的HTTP网络访问接口(一个开源的项目),从名字上就可以看出,它是一个简单的HTTP客户端 (并不是浏览器),可以发送HTTP请求,接受HTTP响应。但是不会缓存服务器的响应,不能执行HTTP页面中签入嵌入的JS代码,自然也不会对页面内 容进行任何解析、处理,这些都是需要开发人员来完成的。简单来说,用HttpClient发送请求、接收响应都很简单,只需要五大步骤即可:1、创建代表客户端的HttpClient对象。2、创建代表原创 2021-06-14 10:53:00 · 397 阅读 · 9 评论 -
Android基础知识整理(三) 线程与进程
三、线程/进程进程进程优先级前台进程(Foreground process)。它表明用户正在与该进程进行交互操作,android系统依据下面的条件来将一个进程标记为前台进程:该进程持有一个用户正在与其交互的Activity(也就是这个activity的生命周期方法走到了onResume()方法)。该进程持有一个Service,并且这个Service与一个用户正在交互中的Activity进行绑定。该进程持有一个前台运行模式的Service(也就是这个Service调用了startFor原创 2021-06-14 10:51:27 · 292 阅读 · 2 评论 -
Android基础知识整理(二) UI
文章目录二、UIViewGoup 五大布局LinearLayoutRelativeLayoutFrameLayoutTableLayoutAbsoluteLayout基础控件TextViewButtonImageViewEditTextProgressBarAlertDialogProgressDialog高级控件RecyclerViewToolbarViewPagerWebView自定义ViewFragment生命周期基础用法Fragment与Activity通信二、UIViewGoup 五大布局原创 2021-06-14 10:46:24 · 160 阅读 · 0 评论 -
Android基础知识整理(一) 四大组件
文章目录一、四大组件Activity生命周期:Intent与序列化:启动模式和FLAG:问题:Servicestart/stopbind/unbind跨进程,binder/aidlIntentService问题:BroadcastReceiver普通和有序广播系统广播LocalBroadcastManager问题:ContentProvide增删改查ContenetObserver自定义ContentProvider问题:一、四大组件Activity生命周期:Intent与序列化:Intent:原创 2021-06-14 10:43:35 · 2309 阅读 · 2 评论 -
Android Toast与Intent使用
文章目录Toast简单使用Intent常用用法Intent向下传递参数Intent向上传递参数Toast简单使用通过静态方法 makeText()创建出一个 Toast 对象,然后 show()出来就可以了。makeText()方法需要传入 3 个参数。第一个参数是 Context,由于活动本身就是一个 Context 对象,因此这里直接传入MainActivity.this 即可。第二个参数是 Toast 显示的文本内容。第三个参数是 Toast显示的时长,有两个内置常量可以选择 Toast.原创 2021-05-15 20:21:59 · 336 阅读 · 0 评论 -
Android Mean的简单使用
简单使用Mean菜单预览:菜单显示在右上角点击省略号显示菜单,并能点击每个条目。实现:1.在 res 目录下新建一个 menu 文件夹–》在新建文件夹下新建一个Menu resource file2.编辑Mean文件<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <item原创 2021-05-15 19:39:16 · 272 阅读 · 0 评论 -
Android RecyclerView 添加一个条目的几个简单方法
1.有动画添加(只用执行这一条语句,自动刷新recyclerview)mAdapter.notifyItemInserted(mAdapter.getItemCount());2.更新数据源并刷新mRows.add(item);//更新数据源mAdapter.notifyDataSetChanged();原创 2021-04-17 17:19:16 · 808 阅读 · 0 评论 -
Android小实例----TodoList
一、概述:开发环境:Android Studio4.1虚拟机:Android11(Google APIs)数据库:基于Sqlite的Room框架功能:添加新计划,更新已有计划,删除一个计划。样式:二、项目结构:1.布局文件布局思路介绍:1).主活动中使用recyclerview布局,添加一个add按钮。2).点击“添加”按钮弹出一个dialog。3).点击dialog确定按钮将recyclerview更新显示。2.java代码逻辑思路介绍:1).数据库Room使用的MVVM原创 2021-04-17 17:21:04 · 1547 阅读 · 2 评论 -
Android 快速将约束布局转为线性布局
只论快速将约束布局转为线性布局,不修改默认布局创建一个新活动,默认为约束布局<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"原创 2021-05-15 17:11:20 · 1572 阅读 · 0 评论