回答編集履歴
2
ちょっと追記
answer
CHANGED
@@ -44,4 +44,5 @@
|
|
44
44
|
}
|
45
45
|
```
|
46
46
|
|
47
|
+
もしgetSupportLoaderManagerがdeprecatedであるならば、これが代わりになるのかもしれませんね。
|
47
48
|
まぁ無理して使うことはないと思いますが、頭の片隅にでも置いといてください。
|
1
getSupportLoaderManagerのdeprecatedと、LoaderManager#getInstanceの話を追記
answer
CHANGED
@@ -3,4 +3,45 @@
|
|
3
3
|
|
4
4
|
[以前、似たような質問に回答しました](https://teratail.com/questions/135504#reply-205381)ので、そちらもご覧ください。
|
5
5
|
質問はFragmentに関してですが、LoaderManagerに関しても同様です。
|
6
|
-
support-v4ライブラリの機能を使用するには、FragmentActivityを継承する必要があります。
|
6
|
+
support-v4ライブラリの機能を使用するには、FragmentActivityを継承する必要があります。
|
7
|
+
|
8
|
+
---
|
9
|
+
マニュアルを見る限りだと、
|
10
|
+
[android.app.Activity#getLoaderManager](https://developer.android.com/reference/android/app/Activity#getLoaderManager())はAPI28でdeprecatedになったと書かれています。
|
11
|
+
[android.support.v4.app.FragmentActivity#getSupportLoaderManager](https://developer.android.com/reference/android/support/v4/app/FragmentActivity#getsupportloaderManager)は特にdeprecatedとは書かれていません。
|
12
|
+
getSupportLoaderManagerを使用するのは問題ないと思います。
|
13
|
+
|
14
|
+
---
|
15
|
+
余談です。
|
16
|
+
|
17
|
+
ところで、上記のマニュアルを漁っていて、気がついたのですが、[android.support.v4.app.LoaderManager#getInstance](https://developer.android.com/reference/android/support/v4/app/LoaderManager.html#getInstance(T))なるメソッドがありました。
|
18
|
+
何となくgetSupportLoaderManagerと同じような機能のようでしたので、ちょっと試してみました。
|
19
|
+
|
20
|
+
```java
|
21
|
+
import android.support.v4.app.FragmentActivity;
|
22
|
+
import android.support.v4.app.LoaderManager;
|
23
|
+
|
24
|
+
public class MainActivity extends FragmentActivity {
|
25
|
+
@Override
|
26
|
+
protected void onCreate(Bundle savedInstanceState)
|
27
|
+
{
|
28
|
+
super.onCreate(savedInstanceState);
|
29
|
+
//LoaderManager loaderManager = this.getSupportLoaderManager();
|
30
|
+
LoaderManager loaderManager = LoaderManager.getInstance(this);
|
31
|
+
}
|
32
|
+
}
|
33
|
+
```
|
34
|
+
|
35
|
+
ただし、support-v4のversionを28にしないとエラーが出ました。
|
36
|
+
|
37
|
+
```
|
38
|
+
// build.gradle
|
39
|
+
dependencies {
|
40
|
+
// こちらではビルドエラー。
|
41
|
+
//implementation 'com.android.support:support-v4:27.+'
|
42
|
+
// こちらで使える。
|
43
|
+
implementation 'com.android.support:support-v4:28.+'
|
44
|
+
}
|
45
|
+
```
|
46
|
+
|
47
|
+
まぁ無理して使うことはないと思いますが、頭の片隅にでも置いといてください。
|