2

在我的应用程序的主页中,服务器向我发送了一些标志。其中之一是广告标志。如果它设置为 true 我需要显示广告,如果它设置为 false 我不应该显示它。

现在,问题。我需要像这样将广告空间放在 XML 文件中。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">


<RileativeLayout
    android:id="@+id/adv"
    android:layout_width="fill_parent"
    android:layout_height="100dip">

</RileativeLayout>

.
.
.
</LinearLayout >

根据上面的代码,如果标志设置为 false,我不会显示广告,但差距仍留在我的屏幕上。如何动态地从我的代码中删除它并转移其他视图(这是它的打击)?

4

3 回答 3

2

正如上面对您问题的评论中提到的:一个视图有几个不同的视图选项。

  • View.VISIBLE:这意味着它是可见的并且可以被用户看到。

  • View.INVISIBLE:这意味着视图仍在布局中,但用户无法看到(用户也无法与之交互)。

  • View.GONE:这意味着视图被销毁并且不再是它的一部分。

从你应该使用的布局中完全删除一个视图View.GONE,如果你要让它可见,你应该使用View,INVISIBLE.

于 2012-05-21T08:32:16.013 回答
1

当你的标志为假时试试这个

add.setVisibility(View.GONE);
于 2012-05-21T08:28:18.947 回答
1

您可以通过更改视图的可见性来“删除”视图。利用

View ad = findViewById(R.id.adv);
ad.setVisibility(View.GONE);
于 2012-05-21T08:32:13.853 回答