У меня возникла проблема с моим кодом, когда я должен показать свои данные в виде повторного просмотра в фрагменте. когда я встроил эту программу в свой телефон. это не может показать нуль, хотя я должен использовать Object.RequireNonNull. но это бесполезно. Вот мой код
ProductList.java
service = RestClient.getDataItems().create(DataInterface.class);
Call<DataResponses> call = service.getData();
call.enqueue(new Callback<DataResponses>() {
@Override
public void onResponse(Call<DataResponses> call,Response<DataResponses> response) {
if(response.body() == null)
{
list.itemlist.addAll(Objects.requireNonNull(response.body()).getUsers());
list.notifyDataSetChanged();
}
else
{
Toast.makeText(getContext(),"Data Masih Kosong Harap diisi dahulu",Toast.LENGTH_SHORT).show();
}
}
@Override
public void onFailure(@NonNull Call<DataResponses> call, @NonNull Throwable t) {
Toast.makeText(v.getContext(),t.getMessage(),Toast.LENGTH_SHORT).show();
}
RestClient.java
public static final String API_BASE_URL = "https://vandc-2c37c.firebaseio.com/";
public static Retrofit retrofit = null;
public static Retrofit getDataItems()
{
if(retrofit == null)
{
OkHttpClient httpClient = new OkHttpClient();
retrofit = new Retrofit.Builder().baseUrl(API_BASE_URL).addConverterFactory(GsonConverterFactory.create()).client(httpClient).build();
}
return retrofit;
}
в моем фрагменте XML-кода я буду использовать
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".productList">
<!-- TODO: Update blank fragment layout -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/sendbox_data_items_list"
android:textSize="30sp"
android:gravity="center"
android:layout_marginTop="50dp"
android:layout_marginStart="@dimen/layout_horizontal_margin"
android:layout_marginEnd="@dimen/layout_horizontal_margin"
android:layout_marginBottom="@dimen/layout_vertical_marginBottom"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/data_items"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:layout_margin="@dimen/layout_horizontal_margin">
</android.support.v7.widget.RecyclerView>
</LinearLayout>
</FrameLayout>