安卓
my_worldlet
这个作者很懒,什么都没留下…
展开
-
根据int颜色值获取带透明度的颜色
获取带透明度的颜色原创 2022-09-02 08:48:33 · 720 阅读 · 0 评论 -
Jetpack Compose之Navigation组件使用
Android Jetpack Compose之组件Navigation的基础使用原创 2022-07-22 14:28:26 · 500 阅读 · 0 评论 -
可设置宽高比的图片
可设置宽高比的图片控件:AspectRatioImageViewclass AspectRatioImageView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : AppCompatImageView(context, attrs, defStyleAttr) { var ratio: Float = DEFAULT_原创 2022-05-30 11:00:42 · 109 阅读 · 0 评论 -
android studio本地build正式包与debug切换
打开Build Variants窗口在窗口中切换构建的包类型切换成功后先clean后run即可。原创 2022-05-09 13:54:50 · 657 阅读 · 0 评论 -
查看kotlin文件对应的java字节码
第一步,打开我们要研究的 Kotlin 代码。第二步,依次点击菜单栏:Tools -> Kotlin -> Show Kotlin Bytecode。这时候,我们在右边的窗口中就可以看见 Kotlin 对应的字节码了。但这并不是我们想要的,所以要继续操作,将字节码转换成 Java 代码。第三步,点击画面右边的“Decompile”按钮。最后,我们就能看见反编译出来的 Java 文件了。...原创 2022-05-05 15:33:07 · 1640 阅读 · 6 评论 -
自定义RecyclerView.ItemDecoration修改间距
自定义类继承自RecyclerView.ItemDecoration,并重写getItemOffsets方法,根据自己想要的效果定制规则来实现。以下实现的效果是以宫格列表为例实现的:第一行时顶部加间距,其他行不加(布局中加了底部间距);item在左边时左间距完整,右间距减一半,item在右边时左间距减半,右间距完整。public class TextTopicGridSpaceItemDecoration extends RecyclerView.ItemDecoration { private原创 2022-05-05 15:22:06 · 425 阅读 · 0 评论 -
隐私协议弹窗中富文本的实现
关键代码:mConTv?.setMovementMethod(LinkMovementMethod.getInstance())spannableStringBuilder=SpannableStringBuilder()spannableStringBuilder?.append("请您认真阅读")val serviceSp= SpannableString("《用户协议》")serviceSp.setSpan(object :ClickableSpan() { override f.原创 2022-04-06 16:29:37 · 605 阅读 · 0 评论 -
拖拽排序效果的RecyclerView
实现拖拽排序效果的RecyclerView关键代码:ItemTouchHelper itemTouchHelper = new ItemTouchHelper(new ItemTouchHelper.Callback() { @Override public int getMovementFlags(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder) { ...原创 2022-03-16 16:28:25 · 779 阅读 · 0 评论 -
安卓:广播BroadcastReceiver的使用
一。最简单的静态注册广播1.创建一个继承BroadcastReceiver的类(广播的接收者)2.在清单文件中注册广播:3.主逻辑代码文件中创建一个Intent,然后发送广播: sendBroadcast(intent);主逻辑代码文件:package com.example.day21_broadreceiver;import android.app.原创 2015-09-25 10:38:20 · 627 阅读 · 0 评论 -
安卓:ViewPager,添加图片方式2及标题版,自动轮播版(第一种)
第二种方式添加图片:1.创建3个带有ImageView的布局2.主布局里放ViewPager控件3逻辑代码里将布局加载到ViewPager中逻辑代码文件:package com.example.day20_viewpage_title;import java.util.ArrayList;import java.util.List;import a原创 2015-09-28 08:47:36 · 1143 阅读 · 0 评论 -
安卓:ViewPager图片轮播(法2)
逻辑代码文件:布局文件原创 2015-09-28 15:09:47 · 772 阅读 · 0 评论 -
安卓:ViewPager及带指示圆点的
打开应用程序看到的滑动页面:滑动时无小圆点1.在布局文件中加入ViewPager控件:2.逻辑代码中:findViewById 找到控件:android.support.v4.view.ViewPager设置ViewPager的适配器自定义适配器,继承自PagerAdapter: 注意要使程序在滑到最后一张时不崩溃需在适配器中destroyItem方法里注释掉调用父原创 2015-09-24 09:45:24 · 2647 阅读 · 0 评论 -
安卓:绑定服务的一个小应用
如图:注意:清单文件里注册服务: 逻辑代码文件:package com.example.day22_service4;import com.example.day22_service4.MyService.MyBind;import android.app.Activity;import android.content.ComponentNa原创 2015-09-28 15:30:49 · 510 阅读 · 0 评论 -
安卓:IntentService实现网络下载图片并写入到SD卡
清单文件中注册服务,添加权限逻辑代码文件:package com.example.day22_intentservice;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;public class Mai原创 2015-09-28 19:08:52 · 1445 阅读 · 0 评论 -
安卓:启动service,下载网络图片,并将图片存放到内存卡,保存成功后发出广播提醒,然后从SD卡读出显示
显示如图:清单文件中加权限主逻辑代码文件:package com.example.day22_service_download;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;publi原创 2015-09-28 15:41:45 · 1340 阅读 · 0 评论 -
安卓:bindService播放指定音乐
raw为自个建的清单文件中注册服务逻辑代码文件:package com.example.day22_music;import android.app.Activity;import android.content.ComponentName;import android.content.Context;import android.content.Inte原创 2015-09-28 17:36:02 · 1533 阅读 · 0 评论 -
安卓:service间通信AID实现
一。如图:清单文件里注册服务1.创建一个接口,写一个抽象方法2.创建一个继承Service的类,写一个返回图中所示名的方法3.再写一个内部类继承Binder并实现步骤1建的接口,实现的抽象方法里返回步骤2中写的方法4.onBind方法里返回的是new 内部类名();5.主逻辑代码文件中,创建一个内部类实现ServiceConnection接口原创 2015-09-29 16:08:53 · 1191 阅读 · 0 评论 -
安卓:Handler实现图片轮播(非ViewPager)
1.布局文件放一个ImageView控件2.逻辑代码文件中找出控件id3.定义一个int类型的图片数组imgs存放图片4.定义一个int类型的索引变量index5.创建一个内部类实现Runable接口6.定义一个Handler对象:Handler handler=new Handler(); 定义一个步骤5创建的类对象并实例化:MyRunable myRunable=new原创 2015-09-29 19:53:01 · 1274 阅读 · 0 评论 -
安卓:service通信,信使实现,客户端和服务端及回传消息的完整版
客户端和服务端显示如图:日志里: 清单文件中注册服务,添加动作服务端APP:1.创建一个继承service的类,2.创建一个内部类继承Handler以处理客户端传过来的消息,handleMessage方法里处理客户端传的数据3.构建Messenger对象,以处理handler消息对象 Messenge原创 2015-09-29 16:50:13 · 1153 阅读 · 0 评论 -
安卓:service,AID通信,有服务端和客户端的
如图:服务端APP:清单文件里注册服务1.创建接口,写一个抽象方法2.去工作环境中找到项目把接口的后缀名改为.aidl3.创建继承service的类,写一个返回字符串的方法4.写一个内部类去继承接口名.Stub,里面实现的抽象方法返回的是步骤3写的方法5.onBind返回的是步骤4创建的内部类接口文件,service类文件在在同一包内原创 2015-09-29 18:03:48 · 727 阅读 · 0 评论 -
安卓中实现Activity向Fragment传值
1.写主布局文件,有一个输入框,发送按钮,用来放Fragment的LinearLayout xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orie原创 2015-09-15 19:39:50 · 6818 阅读 · 1 评论 -
安卓中的几种形式的通知
主布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="m原创 2015-09-16 21:51:18 · 1643 阅读 · 0 评论 -
安卓中的几种菜单
1.OptionsMenu按键菜单:资源文件下的menu目录下的menu.xml文件: <item android:id="@+id/action_settings" android:orderInCategory="100" android:showAsAction="never" android:title="@原创 2015-09-16 21:42:28 · 1367 阅读 · 0 评论 -
安卓中回调实现Fragment向Activity传值
1.创建主布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height原创 2015-09-15 20:31:10 · 1839 阅读 · 0 评论 -
安卓中的外部存储ExternalStorage,工具类
package com.example.day13_extrastroage.utils;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;i原创 2015-09-16 20:11:34 · 587 阅读 · 0 评论 -
安卓中异步任务实现带下载进度的根据图片地址下载图片
点击下载后将图片显示出来:布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" andr原创 2015-09-16 21:22:35 · 710 阅读 · 0 评论 -
android解析JSON,XML数据的请求网络工具类
安卓中像解析一些JSON,XML文件用到的请求网络的工具类,很方便package com.example.login;import java.io.ByteArrayOutputStream;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;public class A原创 2015-09-16 20:25:48 · 530 阅读 · 0 评论 -
安卓:DialogFragment
DialogFragment逻辑代码文件package com.example.day12_dialogfragment;import android.annotation.SuppressLint;import android.app.AlertDialog;import android.app.Dialog;import android.app.DialogFragment;i原创 2015-09-15 21:45:00 · 485 阅读 · 0 评论 -
安卓:回退栈,类似新闻的布局界面
点击新闻出现绿色图,点击娱乐出现蓝色图 1.主布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"原创 2015-09-15 20:51:11 · 592 阅读 · 0 评论 -
安卓:SharedPreferences共享存储的工具类
package com.example.day13_login.utils;import android.content.Context;import android.content.SharedPreferences;import android.preference.PreferenceManager;public class Data_util { static SharedP原创 2015-09-16 11:33:55 · 432 阅读 · 0 评论 -
安卓中9种对话框
主布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="m原创 2015-09-16 21:37:09 · 926 阅读 · 0 评论 -
安卓中sqlite数据库的增删改查操作的工具类
将数据库中的增删改查操作封装成一个类,使用时直接调用很方便package com.qianfeng.day14_sqliteopenhelper2.db;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;原创 2015-09-17 19:14:22 · 1469 阅读 · 0 评论 -
安卓:Fragment向Fragment传值的3种方法
第一种:主布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_hei原创 2015-09-15 21:31:23 · 15073 阅读 · 0 评论 -
安卓:ListFragment
Fragment对应的布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="ver原创 2015-09-15 21:41:11 · 389 阅读 · 0 评论 -
安卓中InternalStorage内存存储的几种方式
布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="mat原创 2015-09-16 15:44:28 · 2012 阅读 · 0 评论 -
安卓ContentProvider的理论知识
1,读取联系人信息:2,联系人的数据库文件的位置 /data/data/com.android.providers.contacts/databases.contacts2.db3,数据库中重要的几张表 1、contacts表 该表保存了所有的手机联系人,每个联系人占一行,该表保存了联系人的 ContactID、联系次数、最后一次联系的时间、是否含有号码、是否被添加 到收藏夹等信息原创 2015-09-20 18:08:15 · 453 阅读 · 0 评论 -
安卓:一个简单的综合使用(1-3周),sqlite,listview,自定义适配器,菜单,对话框,通知.....
第一个界面布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_heigh原创 2015-09-19 17:13:02 · 790 阅读 · 0 评论 -
安卓:查询sqlite数据库中的数据,分页加载显示出来
结果:主逻辑代码文件:package com.example.day14_pageload;import java.io.File;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.annota原创 2015-09-21 17:09:59 · 4645 阅读 · 1 评论 -
安卓:ContetnResolver之查询显示联系人信息及对其的操作
结果图:原创 2015-09-21 17:24:45 · 743 阅读 · 0 评论 -
安卓:handler的基础
如图:数字部分每隔2秒自加1,。。。。。。逻辑代码文件:package com.example.day18_handler;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import an原创 2015-09-22 10:44:28 · 371 阅读 · 0 评论