質問編集履歴

1

自分の困っていることを絞り回答を求めやすくしました。

2021/09/25 07:08

投稿

satoshi2019
satoshi2019

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,22 +1,36 @@
1
- 以下のようにボタンがつあります。
1
+ 以下のようにボタンが1つあります。
2
2
 
3
- それぞれボタンをタップするとダイアログ表示後、イタースティシャル広告へ移行し
3
+ ボタンをタップするとダイアログでラダムに計算問題が出され正解すると
4
4
 
5
- 画面遷移を行うようにコードを書きたいです。
5
+ インタースティシャル広告へ移行し、画面遷移を行うようにコードを書きたいです。
6
6
 
7
7
  ダイアログ表示コードとインタースティシャル広告表示コードをどのように組み合わせれば良いのかで悩んでいます。
8
8
 
9
9
 
10
10
 
11
- 以下のコードでダイアログにはランダムに計算問題が表示されます。
12
-
13
- ![イメージ説明](64ac06d8518f932290617768e0c05814.png)
11
+ ![イメージ説明](44e151ba996bc346309a90ab3d1da841.png)
14
12
 
15
13
 
16
14
 
17
15
  ```swift
18
16
 
17
+ import UIKit
18
+
19
+ import GoogleMobileAds
20
+
21
+
22
+
19
- class ViewController: UIViewController {
23
+ class ViewController: UIViewController, GADInterstitialDelegate {
24
+
25
+
26
+
27
+ var interstitial: GADInterstitial!
28
+
29
+
30
+
31
+ // 足し算に使う変数を用意します
32
+
33
+
20
34
 
21
35
  var correct = 0
22
36
 
@@ -28,6 +42,8 @@
28
42
 
29
43
  @IBOutlet var test: UIButton!
30
44
 
45
+
46
+
31
47
 
32
48
 
33
49
  override func viewDidLoad() {
@@ -36,17 +52,39 @@
36
52
 
37
53
  // Do any additional setup after loading the view.
38
54
 
55
+ interstitial = GADInterstitial(adUnitID: "ca-app-pub-3940256099942544/4411468910")
56
+
57
+ let request = GADRequest()
58
+
59
+ interstitial.load(request)
60
+
61
+ self.interstitial.delegate = self
62
+
39
63
  }
40
64
 
41
65
 
42
66
 
43
- @IBAction func ボタン1(_ sender: Any) {
67
+ @IBAction func test(_ sender: Any) {
68
+
69
+ //広告
70
+
71
+ if interstitial.isReady {
72
+
73
+ interstitial.present(fromRootViewController: self)
74
+
75
+
44
76
 
45
77
  _ = "(a) + (b) = ?"
46
78
 
47
79
  let alert = UIAlertController(title: "あなたは大人ですか?", message: "(a) + (b) = ?", preferredStyle: .alert)
48
80
 
81
+
82
+
83
+
84
+
49
85
  alert.addTextField(configurationHandler: { textField in
86
+
87
+
50
88
 
51
89
  textField.placeholder = "答えを入力してください。"
52
90
 
@@ -60,15 +98,43 @@
60
98
 
61
99
  if let answer = textField.text {
62
100
 
63
- // Int(answer) で入力された数字を Int 型で比較できる
101
+ }
64
102
 
65
- // ここに答え合わせと画面遷移のコードを書く
103
+ // 整数が入力されているかチェックします
66
104
 
105
+ guard let answer = Int(textField.text!) else {
106
+
107
+ return
108
+
67
- }
109
+ }
110
+
111
+
112
+
113
+ if answer == self.correct {
114
+
115
+ //広告
116
+
117
+ self.interstitial = createAndLoadInterstitial()
118
+
119
+ }
120
+
121
+ func createAndLoadInterstitial() -> GADInterstitial {
122
+
123
+ let interstitial = GADInterstitial(adUnitID: "ca-app-pub-2929539065928288/6968941950")
124
+
125
+ interstitial.delegate = self
126
+
127
+ interstitial.load(GADRequest())
128
+
129
+ return interstitial
130
+
131
+ }
68
132
 
69
133
  }
70
134
 
71
135
  })
136
+
137
+
72
138
 
73
139
  let cancel = UIAlertAction(title: "キャンセル", style: .cancel, handler: { (action) -> Void in
74
140
 
@@ -76,102 +142,28 @@
76
142
 
77
143
  })
78
144
 
145
+
146
+
147
+
148
+
79
- alert.addAction(cancel);
149
+ alert.addAction(cancel);
150
+
151
+
80
152
 
81
153
  self.present(alert, animated: true, completion: nil)
82
154
 
155
+
156
+
83
157
  }
84
158
 
159
+ }}
85
160
 
86
161
 
87
- @IBAction func ボタン2(_ sender: Any) {〜以下ボタン1と同様〜
88
-
89
- }
90
162
 
91
163
  ```
92
164
 
93
165
 
94
166
 
95
- た、インタースティシャル表示コードは以下になります。
167
+ インタースティシャル広告が表示されてしいます。
96
-
97
- ```swift
98
-
99
- @IBAction func ボタン1(_ sender: Any) {
100
-
101
- ボタン1= true
102
-
103
- if interstitial.isReady {
104
-
105
- interstitial.present(fromRootViewController: self)
106
-
107
- } else {
108
-
109
- print("Ad wasn't ready")
110
-
111
- }
112
-
113
- interstitial = createAndLoadInterstitial()
114
-
115
- }
116
-
117
-
118
-
119
- @IBAction func ボタン2(_ sender: Any) { if interstitial.isReady {
120
-
121
- interstitial.present(fromRootViewController: self)
122
-
123
- } else {
124
-
125
- print("Ad wasn't ready")
126
-
127
- }
128
-
129
- interstitial = createAndLoadInterstitial()
130
-
131
- }
132
-
133
-
134
-
135
- func createAndLoadInterstitial() -> GADInterstitial {
136
-
137
- let interstitial = GADInterstitial(adUnitID:"ca-app-pub-xxxxxxxxxxxxx")
138
-
139
- interstitial.delegate = self
140
-
141
- interstitial.load(GADRequest())
142
-
143
- return interstitial
144
-
145
- }
146
-
147
-
148
-
149
- func interstitialDidDismissScreen(_ ad: GADInterstitial) {
150
-
151
- if ボタン1 {
152
-
153
- self.presentingViewController?.presentingViewController?.dismiss(animated: true, completion:nil)
154
-
155
- interstitial = createAndLoadInterstitial()
156
-
157
- } else {
158
-
159
- let url = URL(string: "http://xxxxxxxxxxxxxxxx")!
160
-
161
- if UIApplication.shared.canOpenURL(url) {
162
-
163
- UIApplication.shared.open(url)
164
-
165
- }
166
-
167
- interstitial = createAndLoadInterstitial()
168
-
169
- }
170
-
171
- }
172
-
173
- ```
174
-
175
-
176
168
 
177
169
  よろしくお願いいたします。