4

私は小さな戦艦ゲームを作成しています.Android UIのために、10x10の画像ボタンまたは何か(簡単なもの)のグリッドを作成したいと思っていました. このリンクで提供されているチュートリアルに従っていました

私の問題は、画像を適切な 10x10 形式で表示できないことです。GridView を使用して、XML で num_columns を "10" に設定しましたが、行数に関するそのような属性はありません。電話のサイズが異なるため、10x10 のグリッドをどの画面にも自動的に合わせる方法はありますか?

上記のリンクの手順に従うことで、クリック可能な画像を 100 個表示できますが、書式設定に問題があります。上記の結果のスクリーンショットは次のとおりです。 ここに画像の説明を入力

XML の値を変更して画像を縮小しようとしましたが、方法がわかりません。コード スニペットがないことをお詫びしますが、上記のリンクにあるサンプルから、垂直方向と水平方向の間隔以外はあまり変更していません。

私がこれについて完全に間違った方向に進んでいると言うだけだとしても、どんな啓発にも感謝します.

4

3 に答える 3

3

テーブル レイアウトでこれを実現できます: http://www.mkyong.com/android/android-tablelayout-example/

ListViews が任意の数の行を含むように設計されているのと同様に、GridViews。

しかし、ビューの組み込みメカニズムに依存せずに、キャンバスを使用したり、何かを描画したり、クリックを検出したりするだけでなく、ゲームでビューを使用することを本当に望んでいるとは思えません。それはより多くの作業ですが、あなたがやりたいことをもっと自由にできるようにする何かで終わります(例えば、コンテナの行数を扱う必要はありません...)

于 2012-12-30T19:10:28.417 に答える
1

このリンクにアクセスして、2 番目の例のカスタム アダプターの例を試してください。android:numColumns="auto_fit" を android:numColumns="10" に変更するだけです。

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gridView1"
    android:numColumns="10"
    android:gravity="center"
    android:columnWidth="100dp"
    android:stretchMode="columnWidth"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

</GridView>
于 2012-12-30T19:33:47.557 に答える
0

おそらく、でやりたいことができますがGridLayoutGridView(自動的に垂直方向にスクロールする)ではできません。を使用してGridLayout、すべてのボタンのレイアウトの幅と高さを0dpに設定し、レイアウトの重力をに設定しますfill

于 2012-12-30T19:13:39.447 に答える