Android
Vbbbbbbbbbbb
Android学习中~
展开
-
Fragment基础
https://www.cnblogs.com/lgk1002/p/6170494.html转载 2021-11-25 18:14:20 · 150 阅读 · 0 评论 -
git 怎么把一个分支的代码提交到另一个分支上
1,从已有的分支创建新的分支(如从master分支),创建一个dev分支git checkout -b dev2,创建完可以查看一下,分支已经切换到devgit branchdevmaster3.建立本地到上游(远端)仓的链接 --这样代码才能提交上去git branch --set-upstream-to=origin/dev取消对master的跟踪git branch --unset-upstream master...转载 2021-07-25 16:46:46 · 1255 阅读 · 0 评论 -
recyclerview接口回调
https://www.jianshu.com/p/086805262701转载 2021-07-24 21:04:18 · 380 阅读 · 0 评论 -
Android 侧滑菜单
https://www.jianshu.com/p/edf012918db8转载 2021-07-20 21:08:05 · 106 阅读 · 0 评论 -
Android stdio折叠代码块
ctrl shift +或- 展开或收起原创 2021-06-30 10:39:34 · 139 阅读 · 0 评论 -
SharedPreferences的两个参数
SharedPreferences是一个接口,程序是无法创建SharedPreferences实例的,可以通过Context.getSharedPreferences(String name,int mode)来得到一个SharedPreferences实例name:是指文件名称,不需要加后缀.xml,系统会自动为我们添加上。一般这个文件存储在/data/data//shared_prefs下(这个面试常问到)mode:是指定读写方式,其值有三种,分别为:Context.MODE_PRIVATE:指定原创 2021-06-30 09:36:02 · 186 阅读 · 0 评论 -
setVisibility中INVISIBLE和GONE的区别
而INVISIBLE和GONE的主要区别是:当控件visibility属性为INVISIBLE时,界面保留了view控件所占有的空间;而控件属性为GONE时,界面则不保留view控件所占有的空间原创 2021-06-30 09:32:25 · 205 阅读 · 0 评论 -
Android Scroll 滑动分析
https://www.jianshu.com/p/64a1cf4c4184看了一半,先码住,该回去打游戏了!!!转载 2021-05-06 21:35:44 · 95 阅读 · 0 评论 -
recyclerview点击item图片跳转到对应的详情页面
一开始是想使用Intent传递bitmap到详情页面再设置图片,但报了JavaBinder: !!! FAILED BINDER TRANSACTION !!! ,查了一下发现是出现这个问题的原因是我在两个Activity之间使用Intent传递过大的Bitmap才出现的,用Intent传bitmap不能大于40KB,否则就会出现这个情况然后有对应的解决办法,就是把传递的bitmap给压缩了,但我压缩完还是报这个错误QAQpublic static Bitmap compressImage(Bit原创 2021-04-30 08:56:30 · 713 阅读 · 1 评论 -
检索小项目总结
第一次自己做小的app,虽然只有搜索功能,就是对数据库的查功能,但还是遇到很多问题.首先在做首页ui的时候需要一个类似于浏览器扩展功能图标,使用之前常用LinearLayout不能实现,然后第一次接触了约束布局,真好用,四个方位只要定义三个方位就不会报红.想仿照大多浏览器的样子,点击首页搜索框然后跳转到真正可以搜索的界面,然后在下方设置recyclerview.当时的疑问是recyclerview的数据绑定,已经解决,很简单,只需要注意notify的位置即可.现在还有一个问题是,在item布局我使用的是原创 2021-04-25 09:19:54 · 125 阅读 · 0 评论 -
cardview
https://www.jianshu.com/p/8229c8ca3269转载 2021-04-22 18:16:17 · 89 阅读 · 0 评论 -
android给RecyclerView加上折叠的效果示例
https://www.jb51.net/article/106226.htm转载 2021-04-04 11:59:20 · 247 阅读 · 0 评论 -
Android RecyclerView设置
https://www.jianshu.com/p/991062d964cf转载 2021-04-03 16:33:51 · 81 阅读 · 0 评论 -
Android Material Design库用法举例
https://www.jianshu.com/p/08df45712691转载 2021-03-20 23:08:40 · 127 阅读 · 0 评论 -
Android学习-Kotlin语言入门-变量、函数、语法糖、when、for-in、主构造函数、单例类、函数式API、集合遍历、隐式Intent、Activity生命周期、四种启动模式、标准函数
Android操作系统是由Google开发的,为什么JetBrains作为一个第三方公司却可以自己设计出一门编程语言来开发Android应用?探究java语言的运行机制:编程语言大致可以分成两类:编译型语言和解释性语言。编译型语言的特点是编译器会将我们编写的源代码一次性的编译成计算机识别的二进制代码,然后计算机直接执行,像C和C++属于编译型语言。解释型语言则完全不一样,他有一个解释器,在程序运行时,解释器会一行一行的读取我们编写的源代码,然后实时的将这些源代码解释称计算机可识别的二进制数据后再执行,原创 2021-03-15 12:28:23 · 372 阅读 · 0 评论 -
Android学习-继续进阶
全局获取Context的技巧很多地方都需要用到Context:弹出Toast、启动活动、发送广播、操作数据库、使用通知等等。目前为止没有对得不到Context发愁过,因为很多操作都是在活动中进行的,而活动本身就是一个Context对象。但当程序的架构逐渐开始复杂起来的时候,很多的逻辑代码都将脱离Activity类,但此时你又恰恰需要使用Context。举个例子,之前使用HttpUtil类将一些通用的网络操作封装起来,代码如下:这里使用sendHttpRequest方法来发送HTTP请求没有问原创 2021-03-05 21:29:03 · 197 阅读 · 1 评论 -
Android学习-Material Design
谷歌工程师们设计的界面设计语言。Toolbar活动最顶部的那个标题栏就是ActionBar。ActionBar由于设计的原因,被限定只能位于活动的顶部,从而不能实现一些效果,因此官方现在已经不建议使用ActionBar了。那我们学习Toolbar。Toolbar的强大之处在于,它不仅继承了ActionBar的所有功能,而且灵活性很高,可以配合其他控件来完成一些Material Design的效果。首先需要知道,任何一个新建的项目,默认都是会显示ActionBar的,ActionBar是根据项目中指原创 2021-03-03 12:26:45 · 243 阅读 · 0 评论 -
Android学习-基于位置的服务
基于位置的服务简介基于位置的服务简称LBS,主要的工作原理是利用无线电通讯网络或者GPS等定位方式来确定出移动设备所在的位置。基于位置的服务的核心就是要先确定出用户所在的位置。通常有两种计数方式可以实现:一种是通过GPS定位,一种是通过网络定位。GPS定位的工作原理是集于手机内置的GPS硬件直接和卫星交互来获取当前的经纬度信息,这种定位方式精确度非常高,但缺点是只能在室外使用,室内基本无法接收到卫星的信号。网络定位的工作原理是根据手机当前网络附近的三个基站进行测速,以此计算出手机和每个原创 2021-03-01 22:14:52 · 545 阅读 · 0 评论 -
Android学习-服务-Android多线程编程、服务的基本用法、服务的生命周期、前台服务、IntentService
服务是什么服务是Android中实现程序后台运行的解决方案,它非常适合去执行那些不需要和用户交互而且还要求长期运行的任务。服务的运行不依赖于任何用户界面,即使程序被切换到后台,或者用户打开了另外一个应用程序,服务仍然能够保持正常运行。不过需要注意的是,服务并不是运行在一个独立的进程当中的,而是依赖于创建服务时所在的应用程序进程。当某个应用程序进程被杀掉时,所有依赖于该进程的服务也会停止运行。另外,也不要被服务的后台概念所迷惑,实际上服务并不会自动开启线程,所有的代码都是默认运行在主线程中的。也就是说,原创 2021-02-27 23:03:09 · 374 阅读 · 1 评论 -
Android学习-网络技术-使用HTTP协议进行网络交互、HttpURLConnection与OkHttp、XML与JSON的解析、使用java回调机制将服务器响应的数据进行返回
Android中最常使用到的网络技术:在手机端使用HTTP写一和服务器端进行网络交互,并对服务器返回的数据进行解析。WebView可以在自己的应用程序里嵌入一个浏览器,来展示网页。例子:首先使用findViewById方法获取到了WebView的实例,然后调用WebView的getSettings方法可以去设置一些浏览器的属性,这里只调用了setJavaScriptEnabled方法来让WebView支持javascript脚本。接下来调用了WebView的setwebviewclient方法原创 2021-02-23 17:54:40 · 460 阅读 · 3 评论 -
Android学习-运用手机多媒体-通知使用技巧、调用摄像头拍照、从相册中选取照片、播放音频和视频文件(MediaPlayer、VideoView)
android提供了一系列的API,使得我们可以在程序中调用很多的多媒体资源,从而编写出更加丰富多彩的应用程序。使用通知通知(Notification)是Android系统中比较有特色的一个功能,当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以借助通知来实现。发出一条通知后,手机最上方的状态栏会显示一个通知的图标,下拉状态栏后可以看到通知的详细内容。Android的通知功能获得了大量用户的认可和喜爱,就连IOS系统也在5.0版本之后加入了类似的功能。通知的基本用法通知的原创 2021-02-19 18:52:06 · 825 阅读 · 0 评论 -
Android学习-跨程序共享数据-内容提供器
内容提供器简介:内容提供其(Content Provider)主要用于在不同的应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访数据的安全性。目前,使用内容提供其是Android实现跨程序数据共享的标准方式。不同于文件存储和SharedPreferences存储中的两种全局可读写操作模式,内容提供器可以选择只对哪一部分数据进行共享,从而保证我们程序中的隐私数据不会有泄露的风险。Android权限:Android将所有权限分成两类,普通权限和原创 2021-02-15 18:32:38 · 704 阅读 · 0 评论 -
Android学习-文件存储、adb、SharedPreferences、SQLite、LitePal
Android系统中主要提供了3种方式用于简单地实现数据持久化功能,即文件存储、SharePrefererence存储以及数据库存储。当然,除了这三种方式之外,你还可以将数据保存在手机的SD卡中,不过使用文件、SharePreference或数据库来保存数据会相对更简单一些,而且比起将数据保存在SD卡中会更安全。文件存储:文件存储是Android中最基本的一种数据存储方式,它不对存储的内容进行任何的格式化处理,所有数据都是原封不动地保存在文件当中的,因而它比较适合用于存储一些简单的文本数据或二进制数据。原创 2021-02-11 17:25:43 · 2615 阅读 · 3 评论 -
Android学习-广播
Android中的广播主要可以分为两种类型:标准广播和有序广播。标准广播:是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎会在同一时刻接收到这一广播信息,因此它们之间没有任何先后顺序可言。这种广播效率会比较高,但同时也意味着它是无法被截断的。标准广播的工作流程如图。有序广播:则是一中同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器能够收到这条广播信息,当这个广播接收器中的逻辑执行完毕之后,广播才会继续传递。所以此时的广播接收器是有先后顺序的,优先级高的广播接收器就可以先收到广原创 2021-02-05 18:23:01 · 287 阅读 · 0 评论 -
Android学习-RecyclerView实现横向滚动瀑布流布局
ListView扩展性不好,只能实现纵向滚动的效果。这里偷下懒,我们直接粘贴一下书上的代码。为了加深记忆,理解部分我敲出来。RecyclerView属于新增的空间,被定义在了support库中,因此,想要使用该控件,需要在项目的build.gradle中添加相应的依赖库才行。添加完之后要点击一下Sync Now来进行同步。然后修改布局中的代码接下来要为RecyclerView准备一个适配器,新建FruitAdapter类,让这个适配器继承自RecyclerView.Adapter,并将泛型指定为原创 2021-02-01 22:40:17 · 912 阅读 · 1 评论 -
Android学习-ProgressBar、SeekBar
seekbar手动拖动与progressbar进度绑定布局代码 <ProgressBar android:id="@+id/progress2" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="20原创 2021-01-30 21:21:42 · 1222 阅读 · 2 评论 -
Android学习-ListView优化
搬书TaskApater中的getview方法,每次都将布局重新加载了一遍。当Listview快速滚动的时候,这就会成为性能的瓶颈。在getview方法中还有一个convertView参数,这个参数用于将之前加载好的布局进行缓存,以便之后可以进行重用。 @NonNull @Override public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {原创 2021-01-30 18:01:44 · 114 阅读 · 0 评论 -
单元测试
定义测试方法:可以独立运行给方法加@Test导入junit依赖环境一般会用断言操作来处理结果Assert.assertEquals(期望的结果,运算的结果);补充:@Before:修饰的方法会在测试方法之前被自动执行@After:修饰的方法会在测试方法执行之后被自动执行。...原创 2021-01-30 10:28:49 · 154 阅读 · 0 评论 -
Android学习-listview
ListView简单用法布局中添加listview设置id,在活动中使用ArrayAdapter<String> adapter = new ArrayAdapter<String>(当前活动.this,布局id,data)//data需要自己设置,可以设置String[] data = {"bulabula",....};ListView listview = (ListView) findViewById(R.id.(你设置的id));listview.setA..原创 2021-01-29 20:51:42 · 122 阅读 · 0 评论 -
Android-更改下划线颜色 2020-12-30
Android-更改下划线颜色在你的build.gradle中添加最新的appcompat库dependencies {compile ‘com.android.support:appcompat-v7:X.X.X’ // X.X.X 为最新的版本号}让你的activity继承android.support.v7.app.AppCompatActivitypublic class MainActivity extends AppCompatActivity {…}在任何layout.xm原创 2020-12-30 23:00:11 · 273 阅读 · 0 评论