Я строю простой Удар моль клон, и у меня возникли проблемы с выяснением того, как сделать мой макет. Я не играл с Android
dev с тех пор, как Gingerbread
был новым, и я никогда не пытался писать игру раньше, так что простите меня, если это вопросы newb, но я застрял и Googling часами сейчас, и я не получаю ответы.GridLayout или GridView лучше ссылаться на статические предметы?
я в основном получил 3x4
GridLayout
с 12
невидимую моль ImageView
объявлен в layout.xml
файле, и у меня возникают проблемы, выяснить, как я могу создать ссылки на объекты в своем коде, от того, что я создал в XML так Я могу сделать их случайным образом появляться и исчезать и обрабатывать события пользовательского касания.
Я вижу много информации о GridViews
и Adapter
объектов используются для создания ссылок из XML и обрабатывать событие прикосновения, но я не знаю, как это сделать с помощью GridLayout
. Должен ли я переключиться на использование GridView
в LinearLayout
, или есть какая-то невероятно простая вещь, которую мне не хватает?
Кроме того, было бы целесообразнее реализовать onItemClickedListener()
в моем подклассе Activity
или моем подклассе View
? Я немного смущен тем, как мой подкласс View
относится к макету XML
. Может быть, я просто слишком усложняю это?
Спасибо за помощь, ребята. Вот мой layout.xml, если это поможет.
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="3"
android:rowCount="4"
android:useDefaultMargins="true"
android:background="@drawable/grass_bg"
android:id="@+id/wam_view_layout">
<ImageView
android:id="@+id/mole1"
android:visibility="invisible"
android:layout_width="120dip"
android:layout_height="140dip"
android:contentDescription="@string/mole_description"
android:layout_gravity="center"
android:scaleType="fitCenter"
android:src="@drawable/mole" />
<ImageView
android:id="@+id/mole2"
android:visibility="invisible"
android:layout_width="120dip"
android:layout_height="140dip"
android:contentDescription="@string/mole_description"
android:layout_gravity="center"
android:scaleType="fitCenter"
android:src="@drawable/mole" />
<!--pattern continues until mole12-->
</GridLayout>
Добавить ваш макет XMLs. Некоторый код, который вы поставили, например, используя 'GridView' – Mithun