質問編集履歴

2

書式の改善

2018/12/20 07:19

投稿

jtflisku
jtflisku

スコア12

test CHANGED
File without changes
test CHANGED
@@ -4,131 +4,33 @@
4
4
 
5
5
  しかし,Intentを使って画面遷移させようとしてもうまくいきません.
6
6
 
7
- どの部分にIntentの処理を記述すれば良いでしょうか.
8
-
9
7
  コードは以下の通りです.
10
8
 
11
9
 
12
10
 
13
- ```
11
+ ```ここに言語を入力
14
12
 
15
- public class Pattern1 extends FragmentActivity {
16
-
17
-
18
-
19
- ViewPager viewPager;
20
-
21
-
22
-
23
- @Override
24
-
25
- protected void onCreate(Bundle savedInstanceState) {
26
-
27
- super.onCreate(savedInstanceState);
13
+ package com.example.maeda_lab.bunkatu1;
28
-
29
- setContentView(R.layout.activity_pattern1);
30
-
31
- viewPager = (ViewPager) findViewById(R.id.pager);
32
-
33
- viewPager.setAdapter(
34
-
35
- new Pageradapter1(
36
-
37
- getSupportFragmentManager()));
38
-
39
- }
40
-
41
- }
42
-
43
- ```
44
-
45
- pageradapterのコード
46
-
47
-
48
-
49
- ```
50
-
51
- public class Pageradapter1
52
-
53
- extends FragmentStatePagerAdapter {
54
-
55
-
56
-
57
- public Pageradapter1(FragmentManager fm) {
58
-
59
- super(fm);
60
-
61
- }
62
-
63
-
64
-
65
- @Override
66
-
67
- public Fragment getItem(int i) {
68
-
69
-
70
-
71
- switch(i){
72
-
73
- case 0:
74
-
75
- return new Fragment11();
76
-
77
- case 1:
78
-
79
- return new Fragment12();
80
-
81
- case 2:
82
-
83
- return new Fragment13();
84
-
85
- case 3:
86
-
87
- return new Fragment14();
88
-
89
- case 4:
90
-
91
- return new Fragment15();
92
-
93
- default:
94
-
95
- return new Fragment16();
96
-
97
- }
98
-
99
-
100
-
101
- }
102
14
 
103
15
 
104
16
 
105
17
 
106
18
 
107
- @Override
19
+ import android.content.Intent;
108
20
 
109
- public int getCount() {
21
+ import android.os.Bundle;
110
22
 
111
- return 6;
23
+ import android.support.v4.app.Fragment;
112
24
 
113
- }
25
+ import android.view.LayoutInflater;
114
26
 
27
+ import android.view.View;
115
28
 
29
+ import android.view.ViewGroup;
116
30
 
117
- @Override
31
+ import android.widget.Button;
118
32
 
119
- public CharSequence getPageTitle(int position) {
33
+
120
-
121
- return "Page " + position;
122
-
123
- }
124
-
125
- }
126
-
127
- ```
128
-
129
- 画面遷移させたいFragmentのコード
130
-
131
- ```
132
34
 
133
35
  public class Fragment11 extends Fragment {
134
36
 
@@ -148,80 +50,50 @@
148
50
 
149
51
  }
150
52
 
53
+
54
+
55
+ @Override
56
+
57
+ public void onStart() {
58
+
59
+ super.onStart();
60
+
61
+
62
+
63
+ Button button = (Button)getActivity().findViewById(R.id.hannou1);
64
+
65
+ button.setOnClickListener(new View.OnClickListener() {
66
+
67
+
68
+
69
+ @Override
70
+
71
+ public void onClick(View v) {
72
+
73
+ Intent intent = new Intent(this, Fragment17.class);
74
+
75
+ startActivity(intent);
76
+
77
+ }
78
+
79
+
80
+
81
+ });
82
+
83
+
84
+
85
+
86
+
87
+ }
88
+
151
89
  }
152
90
 
153
91
 
154
92
 
155
93
  ```
156
94
 
157
- Fragmentのレイアウト
158
95
 
159
96
 
97
+ (this, Fragment17.class)の部分でエラーが発生しており,エラーの内容は以下の通りです.
160
98
 
161
- ```
162
-
163
- <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
164
-
165
- android:layout_width="match_parent"
166
-
167
- android:layout_height="match_parent">
168
-
169
-
170
-
171
- <TextView
172
-
173
- android:layout_width="match_parent"
174
-
175
- android:layout_height="match_parent"
176
-
177
- android:layout_gravity="center"
178
-
179
- android:background="#ffffff"
180
-
181
- android:gravity="center"
182
-
183
- android:alpha="0.8"
184
-
185
- android:text="呼びかけてください\n反応はありますか?"
186
-
187
- android:textColor="#000000"
188
-
189
- android:textSize="40sp"
190
-
191
- xmlns:android="http://schemas.android.com/apk/res/android" />
99
+ Cannot resolve constructor 'Intent(anonymous android.view.View.OnClickListener, java.lang.Class<com.example.maeda_lab.bunkatu1.Fragment17>)'
192
-
193
-
194
-
195
- <Button
196
-
197
- android:id="@+id/hannou1"
198
-
199
- android:layout_width="wrap_content"
200
-
201
- android:layout_height="wrap_content"
202
-
203
- android:layout_gravity="bottom"
204
-
205
- android:textColor="#000000"
206
-
207
- android:text="反応あり"
208
-
209
- android:textSize="40sp"
210
-
211
- android:background="@drawable/flame_style"
212
-
213
- android:paddingBottom="8dp"
214
-
215
- android:paddingLeft="8dp"
216
-
217
- android:paddingRight="8dp"
218
-
219
- android:paddingTop="8dp"
220
-
221
- android:clickable="true"
222
-
223
- xmlns:android="http://schemas.android.com/apk/res/android" />
224
-
225
- </FrameLayout>
226
-
227
- ```

1

問題点を具体的に記述した

2018/12/20 07:19

投稿

jtflisku
jtflisku

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,227 @@
1
- 現在、viewpagerを使って、スワイプによって画面を切り替えていくアプリを作っているのですが、その画面を切り替えていく中で、あるfragmentで他のactivityに画面遷移するtextview(もしくはボタン)を追加したいと考えています。
1
+ 現在、viewpagerを使って、スワイプによって画面を切り替えていくアプリを作っているのですが、その画面を切り替えていく中で、あるfragmentで他のactivityに画面遷移するボタンを追加したいと考えています。
2
+
3
+
4
+
2
-
5
+ しかし,Intentを使って画面遷移させようとしてもうまくいきません.
3
-
4
-
6
+
5
- ような機能は実現可能でしょうか
7
+ 部分にIntentの処理を記述すれば良いでしょうか
8
+
9
+ コードは以下の通りです.
10
+
11
+
12
+
13
+ ```
14
+
15
+ public class Pattern1 extends FragmentActivity {
16
+
17
+
18
+
19
+ ViewPager viewPager;
20
+
21
+
22
+
23
+ @Override
24
+
25
+ protected void onCreate(Bundle savedInstanceState) {
26
+
27
+ super.onCreate(savedInstanceState);
28
+
29
+ setContentView(R.layout.activity_pattern1);
30
+
31
+ viewPager = (ViewPager) findViewById(R.id.pager);
32
+
33
+ viewPager.setAdapter(
34
+
35
+ new Pageradapter1(
36
+
37
+ getSupportFragmentManager()));
38
+
39
+ }
40
+
41
+ }
42
+
43
+ ```
44
+
45
+ pageradapterのコード
46
+
47
+
48
+
49
+ ```
50
+
51
+ public class Pageradapter1
52
+
53
+ extends FragmentStatePagerAdapter {
54
+
55
+
56
+
57
+ public Pageradapter1(FragmentManager fm) {
58
+
59
+ super(fm);
60
+
61
+ }
62
+
63
+
64
+
65
+ @Override
66
+
67
+ public Fragment getItem(int i) {
68
+
69
+
70
+
71
+ switch(i){
72
+
73
+ case 0:
74
+
75
+ return new Fragment11();
76
+
77
+ case 1:
78
+
79
+ return new Fragment12();
80
+
81
+ case 2:
82
+
83
+ return new Fragment13();
84
+
85
+ case 3:
86
+
87
+ return new Fragment14();
88
+
89
+ case 4:
90
+
91
+ return new Fragment15();
92
+
93
+ default:
94
+
95
+ return new Fragment16();
96
+
97
+ }
98
+
99
+
100
+
101
+ }
102
+
103
+
104
+
105
+
106
+
107
+ @Override
108
+
109
+ public int getCount() {
110
+
111
+ return 6;
112
+
113
+ }
114
+
115
+
116
+
117
+ @Override
118
+
119
+ public CharSequence getPageTitle(int position) {
120
+
121
+ return "Page " + position;
122
+
123
+ }
124
+
125
+ }
126
+
127
+ ```
128
+
129
+ 画面遷移させたいFragmentのコード
130
+
131
+ ```
132
+
133
+ public class Fragment11 extends Fragment {
134
+
135
+
136
+
137
+
138
+
139
+ @Override
140
+
141
+ public View onCreateView(LayoutInflater inflater,
142
+
143
+ ViewGroup container,
144
+
145
+ Bundle savedInstanceState) {
146
+
147
+ return inflater.inflate(R.layout.fragment11, null);
148
+
149
+ }
150
+
151
+ }
152
+
153
+
154
+
155
+ ```
156
+
157
+ Fragmentのレイアウト
158
+
159
+
160
+
161
+ ```
162
+
163
+ <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
164
+
165
+ android:layout_width="match_parent"
166
+
167
+ android:layout_height="match_parent">
168
+
169
+
170
+
171
+ <TextView
172
+
173
+ android:layout_width="match_parent"
174
+
175
+ android:layout_height="match_parent"
176
+
177
+ android:layout_gravity="center"
178
+
179
+ android:background="#ffffff"
180
+
181
+ android:gravity="center"
182
+
183
+ android:alpha="0.8"
184
+
185
+ android:text="呼びかけてください\n反応はありますか?"
186
+
187
+ android:textColor="#000000"
188
+
189
+ android:textSize="40sp"
190
+
191
+ xmlns:android="http://schemas.android.com/apk/res/android" />
192
+
193
+
194
+
195
+ <Button
196
+
197
+ android:id="@+id/hannou1"
198
+
199
+ android:layout_width="wrap_content"
200
+
201
+ android:layout_height="wrap_content"
202
+
203
+ android:layout_gravity="bottom"
204
+
205
+ android:textColor="#000000"
206
+
207
+ android:text="反応あり"
208
+
209
+ android:textSize="40sp"
210
+
211
+ android:background="@drawable/flame_style"
212
+
213
+ android:paddingBottom="8dp"
214
+
215
+ android:paddingLeft="8dp"
216
+
217
+ android:paddingRight="8dp"
218
+
219
+ android:paddingTop="8dp"
220
+
221
+ android:clickable="true"
222
+
223
+ xmlns:android="http://schemas.android.com/apk/res/android" />
224
+
225
+ </FrameLayout>
226
+
227
+ ```