スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

AdStir : 広告の表示/非表示(動的に変更)

携帯アプリに広告を出す際、ずっと出しっぱなしの設定だとマニュアルなどに書いてあり、超簡単にできるけど、表示/非表示の仕方が分からず迷いました。

ちなみに、AdViewのサポートデスクに問い合わせしたところ、10日経っても返信なく、催促したらすぐ回答がきました。忘れてたやろ・・・

あげくに、ぜんぜん的を得ない1行回答。「表示させる場合は、Webのマニュアルをご覧ください」ですって。ちょっとげんなり・・・


というわけで、流れは以下のとおり。

  1. ①xmlレイアウトで、AdStir用のLayoutを作る
  2. ②その上にAdStirを置く
  3. ③JAVAコードで、AdStirを置いたLayoutを表示/非表示にする。

なかなかこれに気づけなかった・・・


具体的なソースコードです。

なお、AdStir広告を出す時、メイン画面に網掛けをしたかったので、FrameLayoutを使っています。

blkという画像を使っていますが、単純な黒い四角の画像です。サイズは適当でOKです。

[画像:blk]

これをdrawableフォルダに保存してください。

blk.png

①xml上のレイアウト

<FrameLayout 
    android:id="@+id/layout_adstir"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:visibility="gone"           >

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"
        android:alpha="0.5"
        android:src="@drawable/blk"
    />
        
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:orientation="vertical" >

        <com.ad_stir.AdstirView
            android:id="@+id/adstir2"
            media="MEDIA-*******f"
            spot="*"
            android:layout_gravity="center" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
        />
        <Button
            android:id="@+id/btn_cloasead"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="広告閉じる"
            android:alpha="1" 
        />
        
    </LinearLayout>
</FrameLayout>

②JAVAコーディング

以下の2つを、例えばOnCreateの中に書きます。

表示させる時

((FrameLayout) findViewById(R.id.layout_adstir)).setVisibility(View.VISIBLE) ;

非表示にする時 ・・・ AdStir広告の下にボタンを配置しており、それがクリックされた時に閉じるようにします。

// AdStir閉じるボタン
((Button)findViewById(R.id.btn_close_ad)).setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {
        ((FrameLayout) findViewById(R.id.layout_adstir)).setVisibility(View.GONE) ;
    }
});


ハッピーメールバナー
スポンサーサイト

トラックバック

コメント

コメントを残す

Secret



上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。