質問編集履歴
5
誤字の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,8 +7,12 @@
|
|
7
7
|
|
8
8
|
これはDialogfragment は普通のfragmentと違うということなのでしょうか?
|
9
9
|
そうだとしたらDialogfragamentから次のDialogfragmentへいく術はあるのでしょうか?
|
10
|
-
|
10
|
+
こういった記事も見つけました。
|
11
|
+
https://techlog.supersoftware.co.jp/2018/03/01/android_breakaway_from_dialogfragment/
|
11
12
|
|
13
|
+
やはり、画面遷移などをするにはfragmentから仮のdialogを作るほうがいいのですかね・・・
|
14
|
+
一応コードを下に記しておきます。見やすいよう適宜省略しております。
|
15
|
+
|
12
16
|
OptionFragment
|
13
17
|
```lang-java
|
14
18
|
import・・・
|
4
見やすくした
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,7 +2,9 @@
|
|
2
2
|
タイトル通りです。
|
3
3
|
オプション画面としてのdialogfragmentから、クレジット画面としてのdialogfragmentへ画面遷移をさせたいのですがうまくいきません。
|
4
4
|
|
5
|
-
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。
|
5
|
+
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。
|
6
|
+
つまり内部的にFragmentTransaction.add() を持つcreditFragment.show() が使えないのです。
|
7
|
+
|
6
8
|
これはDialogfragment は普通のfragmentと違うということなのでしょうか?
|
7
9
|
そうだとしたらDialogfragamentから次のDialogfragmentへいく術はあるのでしょうか?
|
8
10
|
コードを下に記しておきます。見やすいよう適宜省略しております。
|
@@ -46,7 +48,7 @@
|
|
46
48
|
|
47
49
|
private void credit(View v) {
|
48
50
|
flagmentManager=getSupportFragmentManager();//ここが赤くなる
|
49
|
-
creditFragment = new CreditFragment();
|
51
|
+
creditFragment = new CreditFragment();//内部的にFragmentTransaction.add() //を持つcreditFragment.show()も使えない。
|
50
52
|
creditFragment.show(flagmentManager, "credit");
|
51
53
|
}
|
52
54
|
|
3
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
タイトル通りです。
|
3
3
|
オプション画面としてのdialogfragmentから、クレジット画面としてのdialogfragmentへ画面遷移をさせたいのですがうまくいきません。
|
4
4
|
|
5
|
-
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。つまりそのあとの
|
5
|
+
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。つまりそのあとの内部的にFragmentTransaction.add() を持つcreditFragment.show() が使えません。
|
6
6
|
これはDialogfragment は普通のfragmentと違うということなのでしょうか?
|
7
7
|
そうだとしたらDialogfragamentから次のDialogfragmentへいく術はあるのでしょうか?
|
8
8
|
コードを下に記しておきます。見やすいよう適宜省略しております。
|
2
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,7 +2,9 @@
|
|
2
2
|
タイトル通りです。
|
3
3
|
オプション画面としてのdialogfragmentから、クレジット画面としてのdialogfragmentへ画面遷移をさせたいのですがうまくいきません。
|
4
4
|
|
5
|
-
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。
|
5
|
+
Activityからオプション画面には遷移できるのですが、それと同じようにオプション画面にコードを書いても`getSupportFragmentManager();`がエラーとなってしまうのです。つまりそのあとのtransactionもできません。
|
6
|
+
これはDialogfragment は普通のfragmentと違うということなのでしょうか?
|
7
|
+
そうだとしたらDialogfragamentから次のDialogfragmentへいく術はあるのでしょうか?
|
6
8
|
コードを下に記しておきます。見やすいよう適宜省略しております。
|
7
9
|
|
8
10
|
OptionFragment
|
1
誤字の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -14,6 +14,7 @@
|
|
14
14
|
Dialog optionDialog;
|
15
15
|
DialogFragment creditFragment;
|
16
16
|
FragmentManager flagmentManager;
|
17
|
+
---略---
|
17
18
|
|
18
19
|
public OptionFragment() {
|
19
20
|
// Required empty public constructor
|
@@ -38,46 +39,14 @@
|
|
38
39
|
credit(v);
|
39
40
|
}
|
40
41
|
});
|
41
|
-
|
42
|
-
twitter = content.findViewById(R.id.button_twitter);
|
43
|
-
twitter.setOnClickListener(new View.OnClickListener() {
|
44
|
-
@Override
|
45
|
-
public void onClick(View v) {
|
46
|
-
twitter(v);
|
47
|
-
}
|
48
|
-
});
|
49
|
-
|
50
|
-
back = content.findViewById(R.id.view_back);
|
51
|
-
back.setOnClickListener(new View.OnClickListener() {
|
52
|
-
@Override
|
53
|
-
public void onClick(View v) {
|
54
|
-
back(v);
|
55
|
-
}
|
56
|
-
});
|
57
|
-
|
58
42
|
return content;
|
59
43
|
}
|
60
|
-
//focusを当てないようにする。
|
61
44
|
|
62
|
-
@Override
|
63
|
-
public void onActivityCreated(Bundle savedInstanceState) {
|
64
|
-
super.onActivityCreated(savedInstanceState);
|
65
|
-
Dialog optionDialog = getDialog();
|
66
|
-
Window window = optionDialog.getWindow();
|
67
|
-
window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
|
68
|
-
}
|
69
|
-
|
70
45
|
private void credit(View v) {
|
71
|
-
flagmentManager=getSupportFragmentManager();
|
46
|
+
flagmentManager=getSupportFragmentManager();//ここが赤くなる
|
72
47
|
creditFragment = new CreditFragment();
|
73
48
|
creditFragment.show(flagmentManager, "credit");
|
74
49
|
}
|
75
|
-
private void twitter(View v) {
|
76
|
-
// 処理
|
77
|
-
}
|
78
|
-
private void back(View v) {
|
79
|
-
dismiss();
|
80
|
-
}
|
81
50
|
|
82
51
|
}
|
83
52
|
```
|