我已经发布了这个,但我得到了可以帮助你帮助我的新信息...... 我有这个布局的问题,我不知道有什么问题。正如您所看到的,相对布局中有一个天文台和一个桌子,但是天文台没有显示,甚至没有空白。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/firstLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<Chronometer
android:id="@+id/chrono"
android:textColor="#4169E1"
android:textSize="20sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Chronometer"
/>
<TableLayout
android:id="@+id/parentLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
</TableLayout>
</RelativeLayout>
所以我试着改变计时器和tablelayout的顺序。我也试过改变layout_width和layout_height属性,但我什么都没得到。所以我去了我的java课程,我发现问题可能在这里:
private final void createGameBoard(short gridSize) {
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
TableLayout tableLayout;
tableLayout = (TableLayout) findViewById(R.id.parentLayout);
tableLayout.removeAllViews();
board = GameBoard.createGameBoard(this,
bitmap,
tableLayout,
(int) (metrics.widthPixels * metrics.density),
(int) ((metrics.heightPixels * metrics.density)-h1),
gridSize);
}
GameBoard.createGameBoard是:
public static GameBoard createGameBoard(Context context,
Bitmap bitmap,
TableLayout parentLayout,
int width,
int height,
short gridSize) {
board = new GameBoard(context,
bitmap,
parentLayout,
width,
height,
gridSize);
return board;
}
所以我猜测显示计时器的问题来自于游戏板的创建,因为从当前窗口获取的指标用于设置游戏板的高度。 有什么建议吗?
答案 0 :(得分:0)
您的xml代码:
<Chronometer
android:id="@+id/chrono"
android:textColor="#4169E1"
android:textSize="20sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Chronometer"
/>
<TableLayout
android:id="@+id/parentLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
这将强制TableLayout以全屏显示,因此,Chronometer被隐藏。
尝试更改以下内容之一:
1)
<Chronometer
android:id="@+id/chrono"
android:textColor="#4169E1"
android:textSize="20sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Chronometer"
/>
<TableLayout
android:id="@+id/parentLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
这将包装表的内容,因此Chronometer将获得空间。
2)。
<Chronometer
android:id="@+id/chrono"
android:textColor="#4169E1"
android:textSize="20sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Chronometer"
/>
<TableLayout
android:id="@+id/parentLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/chrono"
>
这将强制Chronometer在显示表格布局后占用表格布局下方的全部空间。
希望这有帮助。