随笔分类 -  Android

摘要://创建ViewModel实例 //MyViewModel model = ViewModelProviders.of(this).get(MyViewModel.class); //该方法已弃用 MyViewModel model = new ViewModelProvider(this).get 阅读全文
posted @ 2021-11-05 16:58 曲幽 阅读(219) 评论(0) 推荐(0) 编辑
摘要:对于代码架构,适合的才是最好的,至于是选用MVC,还是MVP,还是MVVM,一方面根据自己的擅长和喜好来决定,再一方面就是根据代码业务逻辑来决定。 如果代码中压根没有用到Model层,那引入MVP等框架,真的只会让代码结构更复杂,而体现不出框架的优势。不要为了使用框架而使用框架。 阅读全文
posted @ 2021-10-27 14:02 曲幽 阅读(92) 评论(0) 推荐(0) 编辑
摘要:概述 因为没有现成的函数方法可用,那就通过一个循环来取得相差的天数了 Calendar curcalendar= Calendar.getInstance(); int days = 0; //定义一个变量来计算相隔天数 while (lmpcalendar.before(curcalendar)) 阅读全文
posted @ 2021-02-25 16:57 曲幽 阅读(2007) 评论(0) 推荐(0) 编辑
摘要:准备2张图片用于替换选中和未选中时的样式 drawable下准备两个对应的layer-list btn_radio_on.xml <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android 阅读全文
posted @ 2021-02-21 16:00 曲幽 阅读(2100) 评论(0) 推荐(0) 编辑
摘要:android recyclerview 切换列表视图。一种是编写两个Adapter,切换Adapter的方式来实现切换列表视图。另一种方式是同一个Adapter切换布局layout的方式来切换视图。直接复制现在视图,控件ID未作变更,这样可以更改最少的代码达到目的。定义一个变量来控制使用哪种布局视图,继承 getItemViewType 来达到实现切换视图的功能。 阅读全文
posted @ 2020-12-18 16:22 曲幽 阅读(1210) 评论(0) 推荐(0) 编辑
摘要:例如:根据文件的最后修改时间进行排序,最新文件在前。自定义数据类排序,如根据文件名称排序,在需要排序的地方调用列表的排序功能,按照上面自定义的 compareTo 进行排序Collections.sort(lstFiles)。 阅读全文
posted @ 2020-11-12 13:49 曲幽 阅读(3150) 评论(0) 推荐(0) 编辑
摘要:要想取得目标索引位置,需要找到拖动结束,松开鼠标后的调用方法,重写 clearView拖动完成之后调用,所操作的viewHolder即为目标位置的项目 阅读全文
posted @ 2020-10-13 16:43 曲幽 阅读(414) 评论(0) 推荐(0) 编辑
摘要:更换项目位置利用集合的更换函数 swap(),移动项目到指定位置,其他所有项目后移要实现这个没有现成的方法可用,上面的swap只会下拉交换两个项目,中间的项目索引不会发生变化,这里分三步实现1.取出要移动的列表项目2.移除此项目3.添加此项目到指定位置 阅读全文
posted @ 2020-10-13 16:38 曲幽 阅读(769) 评论(0) 推荐(0) 编辑
摘要:Android小部件Widget的简单实例,如果小部件中使用到了列表项如 ListView,GridView 等,在绑定数据时需要使用 RemoteViewsService 并提供一个 RemoteViewsFactory 实例来填充数据 而非 Adapter。绑定 item 的定点事件,定义Intent事件模板,相当于公用设定,再在fillIntent里面设定具体的 extra 值。 阅读全文
posted @ 2020-09-29 16:24 曲幽 阅读(1861) 评论(1) 推荐(0) 编辑
摘要:Substring 基本语法 str.substring(","); //从第一个,号开始截取 str.substring(",", str.indexOf(",")); //从第二个,开始截取 IndexOf 基本语法 str.indexOf(","); //字符第一次出现的位置 Split 字符 阅读全文
posted @ 2020-09-27 15:50 曲幽 阅读(763) 评论(0) 推荐(0) 编辑
摘要:常用属性 列数 android:numColumns="3" 行间距 android:verticalSpacing="8dp" 阅读全文
posted @ 2020-09-22 16:58 曲幽 阅读(466) 评论(0) 推荐(0) 编辑
摘要:dependencies{implementation 'com.google.code.gson:gson:2.8.6'},Json数组字串转字符串数据,字符串数组转Json数组字串,Json数组字串转List。配置文件存储。 阅读全文
posted @ 2020-09-22 16:55 曲幽 阅读(784) 评论(0) 推荐(0) 编辑
摘要:一般设定 catch 取得错误时应由小范围到大范围,即先具体错误,最后利用 Exception 处理所有其他错误。 finally 语句是一定会执行的程式段,一般用来删除物件或关闭档案等。 参数 err 可以取得错误信息,一般使用 err.toString() 显示。 能够使用 Log.d() 打印日志错误信息就不使用 e.printStackTrace() 一是为了更好的查找更易读,也可尽量节省内存防止锁死。 阅读全文
posted @ 2020-09-17 14:48 曲幽 阅读(1860) 评论(0) 推荐(0) 编辑
摘要:想要实现侧边栏,需要配合使用DrawerLayout。因为会用到嵌套布局,所以根布局不能是 ConstraintLayout,DrawerLayout 布局下再嵌套两个布局,一个放置内容如 LinearLayout,一个放置侧划菜单,这里使用 NavigationView 为了出现侧边栏点击图标和菜单图标,需要自定义一个 ToolBar,放置在内容 Layout 里。 重点:侧划菜单 NavigationView 一定要设置 android:layout_gravity="start" 阅读全文
posted @ 2020-07-01 08:49 曲幽 阅读(8500) 评论(0) 推荐(1) 编辑
摘要:为了不显示标题栏,所以主题使用了 NoActionBar,这也直接导致选项菜单无处显示,添加一个ToolBar,自定义标题栏。添加menu资源文件夹,添加menu文件,在activity创建的时候创建menu,重载onCreateOptionsMenu,添加菜单项点击事件onOptionsItemSelected。 阅读全文
posted @ 2020-06-30 14:33 曲幽 阅读(585) 评论(0) 推荐(0) 编辑
摘要:切记,一定要先绑定viewpage再添加tab,否则tab的标题无法正常显示出来。setupwithviewpager会在后台做很多事,比如清空tabs等,为了更安全的显示我们的tabs,在绑定viewpager之后,先清空一下tabs再添加 阅读全文
posted @ 2020-06-30 10:17 曲幽 阅读(736) 评论(2) 推荐(0) 编辑
摘要:Android自家的,又可以省去findviewbyid(),而且Butterknife上大神都已经推荐使用的,还有什么理由不去改写呢。build.gradle中开启viewBinding功能。Activity 绑定private lateinit var mBinding: ActivityEbookBinding有个坑特别说明一下,这里的ActivityEbookBinding不是什么内部类,而是你的layout对应的databinding类,开始一直以为有什么包没有引入呢。调用时mBinding中可以直接根据id找到相应的控件 阅读全文
posted @ 2020-06-29 16:17 曲幽 阅读(6772) 评论(0) 推荐(0) 编辑
摘要:Android app 本地设置信息的保存与调用。preferences.getString后面的文本是调用失败后的默认显示值。储存值一定要实例化一个Editor出来,如果直接使用.edit().putString()不是不可以,但会每次调用都多出一个实例。最后记得要editor.apply()执行提交 阅读全文
posted @ 2020-06-29 08:03 曲幽 阅读(825) 评论(0) 推荐(0) 编辑
摘要:Android连接远程数据库,目前看来最好的解决办法就是webservice,利用webservice进行通讯就要soap协议,目前android没有内建相关的函数,需要借助第三方ksoap2-android进行操作。 阅读全文
posted @ 2020-06-17 15:17 曲幽 阅读(2249) 评论(0) 推荐(0) 编辑
摘要:在用Android开发时,需要访问SqlServer数据库,虽然使用 jtds 实现了数据库直连,但总感觉不安全且麻烦,手头有装VisualStudio,就用C#写一个WebService来做数据库的连接中转,记录一下中间的坑。 阅读全文
posted @ 2020-06-17 14:40 曲幽 阅读(781) 评论(0) 推荐(2) 编辑

点击右上角即可分享
微信分享提示