2016-06-05 6 views
1

Ich versuche, vier Registerkarten-Layouts in der Registerkartenansicht zu verwenden. Aber die App ist leider geschlossen. Mein Code und Fehler sindWie füge ich vier Registerkarten in TabView in Android

Manifests

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.chukkapalli.myapplication"> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/MyMaterialTheme"> 
    <activity android:name=".MainActivity" 
     android:label="@string/title_activity_scrollable_tabs" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    </application> 

    </manifest> 

MainActivity.java

package com.example.chukkapalli.myapplication; 

    import android.os.Bundle; 
    import android.support.design.widget.TabLayout; 
    import android.support.v4.app.Fragment; 
    import android.support.v4.app.FragmentManager; 
    import android.support.v4.app.FragmentPagerAdapter; 
    import android.support.v4.view.ViewPager; 
    import android.support.v7.app.AppCompatActivity; 
    import android.support.v7.widget.Toolbar; 
    import java.util.ArrayList; 
    import java.util.List; 


public class MainActivity extends AppCompatActivity { 

private Toolbar toolbar; 
private TabLayout tabLayout; 
private ViewPager viewPager; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    viewPager = (ViewPager) findViewById(R.id.viewpager); 
    setupViewPager(viewPager); 

    tabLayout = (TabLayout) findViewById(R.id.tabs); 
    tabLayout.setupWithViewPager(viewPager); 
} 

    private void setupViewPager(ViewPager viewPager) { 
    ViewPagerAdapter adapter = new  ViewPagerAdapter(getSupportFragmentManager()); 
    adapter.addFrag(new OneFragment(), "ONE"); 
    adapter.addFrag(new TwoFragment(), "TWO"); 
    adapter.addFrag(new ThreeFragment(), "THREE"); 
    adapter.addFrag(new FourFragment(), "FOUR"); 
    viewPager.setAdapter(adapter); 
    } 

    class ViewPagerAdapter extends FragmentPagerAdapter { 
    private final List<Fragment> mFragmentList = new ArrayList<>(); 
    private final List<String> mFragmentTitleList = new ArrayList<>(); 

    public ViewPagerAdapter(FragmentManager manager) { 
     super(manager); 
    } 

    @Override 
    public Fragment getItem(int position) { 
     return mFragmentList.get(position); 
    } 

    @Override 
    public int getCount() { 
     return mFragmentList.size(); 
    } 

    public void addFrag(Fragment fragment, String title) { 
     mFragmentList.add(fragment); 
     mFragmentTitleList.add(title); 
    } 

    @Override 
    public CharSequence getPageTitle(int position) { 
     return mFragmentTitleList.get(position); 
    } 
} 
} 

OneFragment

package com.example.chukkapalli.myapplication; 

import android.os.Bundle; 
import android.support.v4.app.Fragment; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 


public class OneFragment extends Fragment { 

public OneFragment() { 
    // Required empty public constructor 
} 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    // Inflate the layout for this fragment 
    return inflater.inflate(R.layout.fragment_one, container, false); 
} 

} 

activity_main.xml

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 
    <android.support.design.widget.TabLayout 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:tabMode="scrollable"/> 
</android.support.design.widget.AppBarLayout> 

<android.support.v4.view.ViewPager 
    android:id="@+id/viewpager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 
</android.support.design.widget.CoordinatorLayout> 
1.363.210

fragment_one.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".OneFragment"> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="one" 
    android:textSize="40dp" 
    android:textStyle="bold" 
    android:layout_centerInParent="true"/> 

    </RelativeLayout> 

Fehler sind

06-05 06:51:00.543 17217-17217/? I/art: Late-enabling -Xcheck:jni 
06-05 06:51:00.639 17217-17217/com.example.chukkapalli.myapplication  D/AndroidRuntime: Shutting down VM 
06-05 06:51:00.640 17217-17217/com.example.chukkapalli.myapplication  E/AndroidRuntime: FATAL EXCEPTION: main 
                        Process: com.example.chukkapalli.myapplication, PID: 17217 
                        java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/internal/widget/TintManager; 
                         at android.support.design.widget.TabLayout$TabView.<init>(TabLayout.java:1145) 
                         at android.support.design.widget.TabLayout.createTabView(TabLayout.java:635) 
                         at android.support.design.widget.TabLayout.addTabView(TabLayout.java:669) 
                         at android.support.design.widget.TabLayout.addTab(TabLayout.java:365) 
                         at android.support.design.widget.TabLayout.addTab(TabLayout.java:340) 
                         at android.support.design.widget.TabLayout.setTabsFromPagerAdapter(TabLayout.java:624) 
                         at android.support.design.widget.TabLayout.setupWithViewPager(TabLayout.java:595) 
                         at com.example.chukkapalli.myapplication.MainActivity.onCreate(MainActivity.java:29) 
                         at android.app.Activity.performCreate(Activity.java:5933) 
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) 
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) 
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) 
                         at android.app.ActivityThread.access$800(ActivityThread.java:144) 
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) 
                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                         at android.os.Looper.loop(Looper.java:135) 
                         at android.app.ActivityThread.main(ActivityThread.java:5221) 
                         at java.lang.reflect.Method.invoke(Native Method) 
                         at java.lang.reflect.Method.invoke(Method.java:372) 
                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 
                         Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v7.internal.widget.TintManager" on path: DexPathList[[zip file "/data/app/com.example.chukkapalli.myapplication-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]] 
                         at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
                         at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
                         at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 
                         at android.support.design.widget.TabLayout$TabView.<init>(TabLayout.java:1145)  
                         at android.support.design.widget.TabLayout.createTabView(TabLayout.java:635)  
                         at android.support.design.widget.TabLayout.addTabView(TabLayout.java:669)  
                         at android.support.design.widget.TabLayout.addTab(TabLayout.java:365)  
                         at android.support.design.widget.TabLayout.addTab(TabLayout.java:340)  
                         at android.support.design.widget.TabLayout.setTabsFromPagerAdapter(TabLayout.java:624)  
                         at android.support.design.widget.TabLayout.setupWithViewPager(TabLayout.java:595)  
                         at com.example.chukkapalli.myapplication.MainActivity.onCreate(MainActivity.java:29)  
                         at android.app.Activity.performCreate(Activity.java:5933)  
                         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)  
                         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)  
                         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)  
                         at android.app.ActivityThread.access$800(ActivityThread.java:144)  
                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)  
                         at android.os.Handler.dispatchMessage(Handler.java:102)  
                         at android.os.Looper.loop(Looper.java:135)  
                         at android.app.ActivityThread.main(ActivityThread.java:5221)  
                         at java.lang.reflect.Method.invoke(Native Method)  
                         at java.lang.reflect.Method.invoke(Method.java:372)  
                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)  
                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)  
                        Suppressed: java.lang.ClassNotFoundException: android.support.v7.internal.widget.TintManager 
                         at java.lang.Class.classForName(Native Method) 
                         at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 
                         at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 
                          at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 
                          ... 22 more 
                          Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 
06-05 06:56:00.972 17217-17217/com.example.chukkapalli.myapplication I/Process: Sending signal. PID: 17217 SIG: 9 

Wenn ich diesen Code ausführen es eine Ausgabe zeigen, kann es nicht Fehler bei Seitenaufruf zeigen. Was ich im Code verpasst habe. Vielen Dank

+0

zu ändern, zeigen Sie Ihre 'build.gradle' Datei an und sehen Sie meine Antwort. – Ironman

Antwort

0

Stellen Sie sicher, dass alle Support-Bibliotheken die same version sein müssen. Versuchen Sie, entweder appcompat-v7 und support-v4 zu 23.0.1 oder 23.1.1

+0

Vielen Dank, Bruder –

Verwandte Themen