retrofit封装dialog加载
时间: 2023-02-08 16:13:28 浏览: 100
加载中Dialog
Retrofit 是一个类型安全的 HTTP 客户端,它可以帮助我们进行网络请求。如果需要在请求时显示加载框,可以在请求之前显示对话框,在请求结束后关闭对话框。
具体实现方法可以使用拦截器来实现,在请求之前显示加载框,在请求结束后关闭加载框,可以参考下面的代码示例:
```
public class LoadingInterceptor implements Interceptor {
private Dialog mDialog;
public LoadingInterceptor(Context context) {
mDialog = new Dialog(context);
mDialog.setContentView(R.layout.loading);
}
@Override
public Response intercept(Chain chain) throws IOException {
mDialog.show();
Response response = chain.proceed(chain.request());
mDialog.dismiss();
return response;
}
}
```
在 Retrofit 的 build() 中加入这个拦截器即可
```
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(new OkHttpClient.Builder().addInterceptor(new LoadingInterceptor(context)).build())
.build();
```
这样你就可以在网络请求的时候显示一个加载框了。
阅读全文