Ich versuche, ein Fragment zu erstellen, das aus einem Tablayout besteht, also verwende ich FragmentTabHost, aber die Methode setup () im Code gibt folgenden Fehler aus:
public class PayFrag extends Fragment {
private FragmentTabHost mTabHost ;
View mRoot;
TabHost tabHost;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
mTabHost = new FragmentTabHost(getActivity());
mTabHost.setup(getActivity(),getChildFragmentManager(),R.layout.payfrag);
Letzte Zeile im Code gibt einen Fehler
Ich habe sogar den android.support-v4 in Gradle aktualisiert - hier ist mein Modul grandle
apply plugin: "com.android.application"
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.example.sairav.app3"
minSdkVersion 17
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
}
dependencies {
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.android.support:appcompat-v7:22.1.1"
compile "com.android.support:support-v4:22.1.1"
}
Antworten:
1 für die Antwort № 1Sie müssen die v4-Unterstützungsbibliothek anstelle der Standardbibliothek importieren. Fügen Sie bei den Importen oben auf Ihrem PayFrag-Fragment diese beiden Zeilen hinzu:
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTabHost;
Wenn Sie haben android.app.Fragment
importiert, können Sie es ersetzen.