【问题标题】:Getting Error in Making Sliding Tabs Android app制作滑动标签 Android 应用程序时出错
【发布时间】:2015-07-08 16:56:48
【问题描述】:

我正在为 android 中的滑动标签创建演示。

添加所有必需的 java 和 Xml 文件后,应用程序正在崩溃。

Link I referred

使用上面的链接我创建了演示。

MainActivity.java

public class MainActivity extends AppCompatActivity {

    // Declaring Your View and Variables

    Toolbar toolbar;
    ViewPager pager;
    ViewPagerAdapter adapter;
    SlidingTabLayout tabs;
    CharSequence Titles[]={"Home","Events"};
    int Numboftabs =2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        // Creating The Toolbar and setting it as the Toolbar for the activity

        toolbar = (Toolbar) findViewById(R.id.tool_bar);
        setSupportActionBar(toolbar);


        // Creating The ViewPagerAdapter and Passing Fragment Manager, Titles fot the Tabs and Number Of Tabs.
        adapter =  new ViewPagerAdapter(getSupportFragmentManager(),Titles,Numboftabs);

        // Assigning ViewPager View and setting the adapter
        pager = (ViewPager) findViewById(R.id.pager);
        pager.setAdapter(adapter);

        // Assiging the Sliding Tab Layout View
        tabs = (SlidingTabLayout) findViewById(R.id.tabs);
        tabs.setDistributeEvenly(true); // To make the Tabs Fixed set this true, This makes the tabs Space Evenly in Available width

        // Setting Custom Color for the Scroll bar indicator of the Tab View
        tabs.setCustomTabColorizer(new SlidingTabLayout.TabColorizer() {
            @Override
            public int getIndicatorColor(int position) {
                return getResources().getColor(R.color.tabsScrollColor);
            }
        });

        // Setting the ViewPager For the SlidingTabsLayout
        tabs.setViewPager(pager);



    }

Logcat 中的错误

07-08 13:49:32.710: E/AndroidRuntime(7625): FATAL EXCEPTION: main
    07-08 13:49:32.710: E/AndroidRuntime(7625): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.slidingtab/com.example.slidingtab.MainActivity}: android.view.InflateException: Binary XML file line #14: Error inflating class com.android4devs.slidingtab.SlidingTabLayout
    07-08 13:49:32.710: E/AndroidRuntime(7625):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184)
    07-08 13:49:32.710: E/AndroidRuntime(7625):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2211)
    07-08 13:49:32.710: E/AndroidRuntime(7625):     at android.app.ActivityThread.access$600(ActivityThread.java:149)
    07-08 13:49:32.710: E/AndroidRuntime(7625):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1300)

帮我解决这个错误。

【问题讨论】:

  • 你有com.android4devs.slidingtab.SlidingTabLayout这个类吗
  • 你有这门课
  • 在这个特定的包中我的意思是如果你去你的xml并按下控制并点击这一行
  • 你刚才我在 xml 中更改了我的包,但又出现了新错误
  • 07-08 14:02:57.715: E/AndroidRuntime(7934): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com.example.slidingtab/com.example.slidingtab.MainActivity} : java.lang.IllegalStateException: 这个活动已经有一个由窗口装饰提供的操作栏。不要在主题中请求 Window.FEATURE_ACTION_BAR 并将 windowActionBar 设置为 false 以使用工具栏。

标签: android pagerslidingtabstrip android-tablayout


【解决方案1】:

对于您的第二个错误,将此添加到您的 style.xml

<style >
        <item name="android:windowActionBar">false</item>
</style>

【讨论】:

【解决方案2】:

我找到了问题的答案

Link i referred

在 Styles.xml 中添加这一行

样式.xml

<style name="NoActionBarTheme" parent="Theme.AppCompat.Light.NoActionBar">

   </style>

在清单文件中将您的主题样式更改为 NoActionBarTheme

清单文件

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

    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="22" />

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

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".Tab1"
            android:label="@string/title_activity_tab1" >
        </activity>

        <activity
            android:name=".Tab2"
            android:label="@string/title_activity_tab2" >
        </activity>
    </application>

</manifest>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-26
    • 1970-01-01
    • 2017-03-04
    相关资源
    最近更新 更多