Android
追风z
这个作者很懒,什么都没留下…
展开
-
VIewPager 通用配置
package com.ixuea.courses.mymusic.adapter;import android.content.Context;import java.util.ArrayList;import java.util.List;import androidx.annotation.NonNull;import androidx.fragment.app.FragmentManager;import androidx.fragment.app.FragmentStatePag原创 2021-03-15 23:34:35 · 172 阅读 · 0 评论 -
网络请求相关依赖库
网络相关依赖库 //请求网络相关 //okhttp //https://github.com/square/okhttp implementation 'com.squareup.okhttp3:okhttp:4.2.0' //用来打印okhttp请求日志 //当然也可以自定义 implementation("com.squareup.okhttp3:logging-interceptor:4.2.0") //retrofit //原创 2020-10-07 17:08:33 · 124 阅读 · 0 评论 -
开发环境和测试环境(配置网络请求相关地址)
我们这里项目用到的接口,就和大家访问Google一样,也有一个网址,同时在真实项目中,不同的环境,可能有不同的地址;目的是开发,和测试。我们这里只有一个,但我们会给大家演示如何配置两个。企业开发中通常都有三个环境,分别是dev,qa,prod分别代表开发环境,测试环境,正式环境;部分企业还有一个预上线环境。对于我们App来说他们最大的不同就是端点(endpoint)不同,所以我们这里要配置多个环境,配置有多种方法,可以使用注释,但这样容易出错;也可以将所有API,图片资源地址,一些配置Key放到一个常量类原创 2020-10-07 16:57:50 · 2569 阅读 · 0 评论 -
如何允许HTTP请求
如何允许HTTP请求在Android新版中,默认不允许HTTP请求,我们可以通过如下配置开启HTTP请求,因为HTTPS的基础使用,客户端不用做任何处理,但还有一些特殊的用法,但这些方法就需要深入学习了。<application ... android:usesCleartextTraffic="true">测试确认能运行。...原创 2020-10-04 17:52:00 · 721 阅读 · 0 评论 -
网络框架OKhttp Retrofit Gson等
网络底层框架Okhttp网络上层框架 (封装了Okhttp)RetrofitJSON解析框架使用Google的 Gson。响应式编程框架RxJava(使用了基础的响应式编程,Java项目也可以使用),RxAndroid(实现了Android上特有的响应式编程),前面已经讲解了响应式编程,和该框架的简单用法,后面还会在合适场景讲解他的使用方式。...原创 2020-09-24 18:03:34 · 101 阅读 · 0 评论 -
如何解决Dex方法数问题(解决单个dex里面的方法数不能超过65535个的问题)
问题背景在Android中,所有的Java/Kotlin文件编译后,会放到一个后缀为dex的文件,但Google有一个规范是,单个dex里面的方法数不能超过65535个,但真实项目中,特别是我们这个项目,后面会集成很多的依赖,所以肯定会超过这个数量,如果不解决,后面就会报错,对于这个问题,Google官方提供了解决方法,一般情况下这个问题,都会在创建完项目后,配置完成,但因为要写到Application中,所以我们这里才实现,因为正好前面添加了AppContext。如何解决集成官方提供的MultiDe原创 2020-09-24 17:38:19 · 737 阅读 · 0 评论 -
Button的技巧使用
Button透明后去掉边框的阴影 <!-- android:background="@color/transparent" (只写这个的话,边框会有阴影) 去掉边框的一些阴影 style="?attr/borderlessButtonStyle" 可能有些系统没有这个属性,所以可能找不到,所以加上上面的透明色 --> <Button styl原创 2020-09-22 18:13:46 · 163 阅读 · 1 评论 -
EditText的背景选择器 Selector(包含复用style)
<!-- 这里不能使用maxLength限制最长字符数 因为我们这里用户名还有邮箱 这里不能使用maxLength限制最长字符数 因为我们这里用户名还有邮箱所以用textEmailAddress textEmailAddress:用这个可以输入邮箱和手机号, 后面可以在代码中判断是手机号还是邮箱 --> &...原创 2020-09-22 16:33:35 · 639 阅读 · 0 评论 -
Toolbar(去除默认的actionBar主题,使用Toolbar)
前面说了,Android默认每个界面都有ActionBar,而我们项目使用Toolbar,所以要给Activity配置去除ActionBar的主题,前面我们已经配置了,如果大家还没配置要配置了,才能使用Toolbar,不然会因为冲突,而崩溃。如果没有这个依赖,则需要添加 //material design依赖 //AppBarLayout在这里面 implementation 'com.google.android.material:material:1.0.0'/** * 通用原创 2020-09-22 15:53:10 · 849 阅读 · 0 评论 -
界面全屏和隐藏状态栏和亮色状态栏
/** * 全屏 */ protected void fullScreen() { //设置界面全屏 //获取decorView View decorView = getWindow().getDecorView(); //判断版本 if (Build.VERSION.SDK_INT >= 16 && Build.VERSION.SDK_INT < 19) {...原创 2020-09-22 11:06:28 · 544 阅读 · 0 评论 -
将源码兼容版本设置为Java 8(Butterknife需要1.8)
app下的 build.gradleandroid { //编译版本 compileSdkVersion rootProject.ext.compileSdkVersion //默认配置 defaultConfig { //应用唯一标志 applicationId "com.ixuea.courses.mymusicold" minSdkVersion rootProject.ext.minSdkVersion原创 2020-09-22 10:56:59 · 247 阅读 · 0 评论 -
ViewPager(翻页视图)
<?xml version="1.0" encoding="utf-8"?><android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="match_parent" android:layout_height="match_parent"/>...原创 2019-04-01 23:07:22 · 505 阅读 · 0 评论 -
TabLayout+ViewPager
import android.support.design.widget.FloatingActionButton;import android.support.design.widget.Snackbar;import android.support.design.widget.TabLayout;import android.support.v4.view.ViewPager;...原创 2019-04-14 19:58:33 · 320 阅读 · 0 评论 -
RecyclerView万能分割线
public class DividerItemDecoration extends RecyclerView.ItemDecoration{/** RecyclerView的布局方向,默认先赋值 为纵向布局* RecyclerView 布局可横向,也可纵向* 横向和纵向对应的分割线画法不一样* */private int mOrientation = LinearLayoutMana...原创 2019-03-31 23:12:45 · 353 阅读 · 0 评论 -
GridView(网格视图)
GridView 是按照行列的方式来显示内容的,一般用于显示图片列表,比如九宫格列表,使用GridView实现起来很简单。GridView 的用法与ListView 类似,首先看图2-36,效果图中显示的两张图片是网上找的。1.修改布局文件activity_main.xml。<?xml version="1.0" encoding="utf-8"?><RelativeL...原创 2019-04-05 10:25:37 · 747 阅读 · 0 评论 -
Fragment案例--实现底部导航
1 *MainActivity extends FragmentActivityimport com.example.fragment.DynamicFragment;import com.example.fragment.HomeFragment;import com.example.fragment.MessageFragment;import com.example.fragmen...原创 2019-04-04 10:23:47 · 404 阅读 · 0 评论 -
android 5.0与状态栏融合
/** *由于整个功能是Android5.0集以上的系统才支持的,因此我们现在代码中做了一个系统版本号的判断, * 只有当版本号大于或等于21,也就是5.0以上系统时才会执行后面的代码。 * 接着我们调用了getWindow().getDecorView();方法拿到当前活动的DecorView,再调用它的 * setSystemUiVisibility()方法来改变系统UI的显示,这里...原创 2019-01-25 17:52:13 · 159 阅读 · 0 评论