2

アプリケーションのメインページで、サーバーからいくつかのフラグが送信されます。その1つは、アドバタイズフラグです。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

ビューの表示を変更することで、ビューを「削除」できます。使用する

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

フラグがfalseの場合にこれを試してください

add.setVisibility(View.GONE);
于 2012-05-21T08:28:18.947 に答える