我为安卓制作了一个记忆游戏。游戏由 a 组成TableLayout
,TableRow
s 带有一个名为 的自定义视图Card
,动态添加。卡片可以根据屏幕大小自行调整大小。
问题是,当我添加 a 时com.google.ads.AdView
,我遇到了麻烦:加载广告时,tableLayout 变小了,但Card
s 不会自行调整大小,并且从太小的空间中被“剪切”。
我尝试了什么:添加onCreate
:
myAd.setAdListener(new AdListener() {
public void onReceiveAd(Ad arg0) {
Log.d(TAG, "onReceivedAd");
TableLayout tl = (TableLayout) findViewById(R.id.my_TableLayout_id);
tl.invalidate();
}
...
});
我还尝试遍历所有卡片并拨打电话tl.recomputeViewAttributes(View);
,但都没有解决问题。
OnSizeChaneged
的牌甚至都没有跟注,所以没用。
所以,问题是:如何让 TableLayout 在调整大小时重新计算每个元素的空间?