问题描述
我正在尝试在TableLayout中显示图像。显示了图像,但没有应显示的行和列(6行和4列-请参见下图!)。
这是我尝试过的
private fun drawGrid()
{
var row: TableRow
val cellSize: Size = getCellSize();
val layoutpParams: ViewGroup.LayoutParams = ViewGroup.LayoutParams(cellSize.width,cellSize.height)
var imageView: ImageView
_gridElementList = getData()
var index: Int = 0
for (i: Int in 0 until settings.row)
{
row = TableRow(this)
row.layoutParams = layoutpParams
for (j: Int in 0 until settings.column)
{
imageView = ImageView(this);
imageView.setimageResource(_gridElementList[index].drawableId)
row.addView(imageView);
index++
}
tableLayout.addView(row);
}
}
private fun getCellSize() : Size
{
windowManager.defaultdisplay.getMetrics(displaymetrics);
val screenHeight = displaymetrics.heightPixels
val screenWidth = displaymetrics.widthPixels
val height: Int = ( screenHeight / settings!!.row).toInt()
val width: Int = (screenWidth / settings!!.column).toInt()
return Size(width,height)
}
我需要调整图像大小以始终适合屏幕。矩阵最小为2x2,最大大小为4 x 8。
该活动的xmls:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".GameActivity">
<TableLayout
android:id="@+id/tableLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/timeLabelTextView"
android:layout_width="301dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="Eltelt idő"
android:textAlignment="center"
android:textSize="24sp" />
<TextView
android:id="@+id/timeTextView"
android:layout_width="168dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="0"
android:textAlignment="center"
android:textSize="24sp"
android:textStyle="bold" />
</TableRow>
</TableLayout>
</LinearLayout>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)