我是一个Android新手试图使用我的VB经验(8年前)并设计一个用户界面。我正在尝试创建一个跳棋板,它在VB中将是一个表单,我可以根据需要在多行中连续添加多个可调整大小的面板小部件。由于这些是面板,我可以在它上面添加一个小图像(硬币)(面板作为背景),或者甚至添加另一个小面板,其中我可以使颜色可见,不可见以代表硬币。我知道描述一个VB用户界面很糟糕,但VB的目的是让表单设计变得简单,而且确实很有用,这是我能想到的唯一用户界面语言。
我注意到android SDK几乎没有足够的小部件供我使用。我能想到的最好的是使用具有多行的TableLayout。我没有得到的是我用什么代表一个正方形?是否有类似于VB面板小部件的东西?我不想使用图像,因为我希望电路板可以自动调整到屏幕尺寸。
有人可以帮我提一些提示吗?
答案 0 :(得分:2)
您可以使用水平LinearLayout以XML格式定义布局,并使用8个ImageViews(或任何其他可以显示图像/颜色的容器)填充它,并在垂直LinearLayout中复制7次,类似于:
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<ImageView android:id="@+id/square_1"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
<!-- Set image or background here --> />
<!-- Repeat the ImageView 7 times and change the id for every ImageView
you create -->
</LinearLayout>
<!-- Reapeat the LinearLayout 7 times too -->
</LinearLayout>
这将创建8行,每行8个正方形,所有正方形将具有相同的大小,这要归功于权重属性,表明它们都应该得到相等的空间。
要使用Java代码更改图像/背景,您必须使用:
ImageView square_1 = (ImageView)findViewById(R.id.square_1);
square_1.setBackground(Color.yellow);
在Android SDK参考中阅读更多内容:
希望这可以帮助你一路走来!