質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

2回答

1787閲覧

[iOS] アプリ内にサーバーから中身を差し替えられるバナーを設置したいです

7hikolin

総合スコア124

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2015/07/21 02:06

iOSアプリ内で自社広告などをバナーにして表示させたいです。
で、そのバナーの中身を差し替えられるようにして、そのバナーをタップした時の動作も変えられるようにしたいです。
そして、バナー広告を出さない時には、その部分が消えてほかのレイアウトが拡張して見えなくします。

どういう方法があるでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

おそらくバナーに表示するデータをAPIなどを経由してサーバーから取得する、ということですよね。

そうであれば、
・バナーに表示する内容(テキスト、画像URLなど)
・動作を変えるための判定フラグ(かモード文字列など)
・広告であればタップして遷移する先のURLや、広告で使うIDなど
これらのデータを

  1. APIサーバーから非同期で取得し
  2. モデルクラスを用意してそこに格納
  3. バナー用のViewにデータを設定
  4. バナーをタップした時のアクションクラスでモデルの内容によって動作を判定

といった感じの実装になるかと思います。
また、1)の結果が0件であるか1件以上あるかで、Autolayout(を使っているのであれば)の制約を更新します。

投稿2015/07/22 09:36

kubothink

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

バナーのModelを考えてみましょう。
イメージ
動作:webviewや画面遷移(SNS連携含む)になるでしょう。
リンク先:webviewや画面遷移のリンク先
テキスト
バナーのリストを保持していてイメージやテキストが変わることでmodelが変わるので押下時のイベントのmodelの挙動に紐付けば良いと思います。
レイアウトに関しては表示と非表示時のイベントにレイアウト調整を入れておくことでしょう。

投稿2015/07/21 04:03

jsdekiru

総合スコア19

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問