Этот пример не создает "динамический макет". Макет, который является частью, которую вы определяете в XML, состоит только из одного View
объекта, MyView
.
Я предполагаю, что вы имеете в виду «динамическое расположение», это класс MyView
, который является пользовательским объектом View
, который принимает сенсорный ввод и рисует на экране. Это не может быть определено в XML ... вы должны написать код Java для обработки необходимой логики, так как обычный класс View (который расширяет MyView) не поддерживает такую функциональность.
Что вам нужно сделать, это создать файл Java, определяющий класс MyView. Скажем, например, com.example.MyView
. Затем в XML вы можете включить это пользовательское представление в макет, ссылаясь на полное имя, включая имя пакета. Например ...
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical">
<com.example.MyView>
android:layout_height="fill_parent"
android:layout_width="fill_parent"
</com.example.MyView>
</LinearLayout>
Вы можете использовать этот макет в упражнении как обычно, используя setContentView
.