Дело такое: при запуске time-managera пустой список в начале. Нужно туда вставить картинку, которая бы пропадала как только мы что-то добавили. Отсюда и вопрос: как сначала показать картинку, а потом спрятать?
Нашёл сам ответ. Сначала нужно в layout сделать элементы, которые нам нужны.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background">
<android.support.v7.widget.RecyclerView
android:id="@+id/task_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:textAlignment="center" />
<ImageView
android:id="@+id/imageEmptyViewFirst"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
app:srcCompat="@android:drawable/ic_menu_view"
tools:layout_editor_absoluteX="176dp"
tools:layout_editor_absoluteY="239dp" />
<TextView
android:id="@+id/textEmptyViewFirst"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/imageEmptyViewFirst"
android:layout_centerHorizontal="true"
android:gravity="center"
android:text="@string/empty_first"
android:textColor="@color/text" />
<ImageView
android:id="@+id/imageEmptyViewSecond"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginStart="16dp"
android:layout_toEndOf="@+id/textEmptyViewFirst"
app:srcCompat="@android:drawable/ic_menu_upload" />
<TextView
android:id="@+id/textEmptyViewSecond"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/textEmptyViewFirst"
android:layout_below="@+id/imageEmptyViewSecond"
android:layout_marginStart="34dp"
android:gravity="center"
android:text="@string/empty_second"
android:textColor="@color/text" />
Затем в классе организовываем их подключение, получаем где-то ответ, что экран пустой и меняем просто setVisibility
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
...
View view = inflater.inflate(R.layout.fragment_task_list, container,
false);
isEmptyImageFirst = view.findViewById(R.id.imageEmptyViewFirst);
isEmptyTextFirst = view.findViewById(R.id.textEmptyViewFirst);
isEmptyImageSecond = view.findViewById(R.id.imageEmptyViewSecond);
isEmptyTextSecond = view.findViewById(R.id.textEmptyViewSecond);
mTasksRecyclerView = (RecyclerView) view
.findViewById(R.id.task_recycler_view);
mTasksRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
if (TaskLab.get(getActivity()).getTasks().size() > 0) {
mTasksRecyclerView.setVisibility(View.VISIBLE);
isEmptyImageFirst.setVisibility(View.GONE);
isEmptyTextFirst.setVisibility(View.GONE);
isEmptyImageSecond.setVisibility(View.GONE);
isEmptyTextSecond.setVisibility(View.GONE);
}
else {
mTasksRecyclerView.setVisibility(View.GONE);
isEmptyImageFirst.setVisibility(View.VISIBLE);
isEmptyTextFirst.setVisibility(View.VISIBLE);
isEmptyImageSecond.setVisibility(View.VISIBLE);
isEmptyTextSecond.setVisibility(View.VISIBLE);
}
...
return view;
}
Скрин с телефона, что получилось. Как только список пополняется элементами - надписи становятся невидимыми.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь запустить сервер для сайта на Spring MVC + простой tcp-сервер для общения с удаленными устройствамиНикак не могу запустить tcp-сервер при...