Что делает код, так это определяет все представления в коде и помещает их в один макет контейнера (HorizontalPager). Затем он устанавливает макет для отображения в упражнении. Это, однако, менее часто в разработке Android. Я не совсем уверен, что понял правильно, возможно, у вас уже есть некоторый опыт работы с Android, но более обычный способ определения макетов - использование подпапки раскладок res /. Вы определяете все свои представления, используя xml и пользовательские теги Android, а затем при сборке вы можете получить доступ к файлам макета через R.layout. Вот один пример макета, взятый из учебных пособий по Android:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a TextView" />
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a Button" />
</LinearLayout>
Если вы поместите его в custom_layout.xml, вы получите к нему доступ и установите его для своей активности следующим образом:
setContentView(R.layout.custom_layout);
Существует также специальный тег для ImageView. Поэтому, если я правильно понял, вы можете добавить представление изображения в custom_layout.xml. С другой стороны, я могу подтвердить, что вы также можете продолжать создавать макеты полностью в коде и использовать
ImageView imageView = new ImageView(getApplicationContext());
imageView.setResourceContent(R.drawable.my_png);