首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从空活动转到选项卡布局的按钮

从空活动转到选项卡布局的按钮
EN

Stack Overflow用户
提问于 2020-03-31 11:01:10
回答 2查看 39关注 0票数 0

我一直在尝试从一个空的活动到一个选项卡布局,但一旦点击按钮,应用程序就会崩溃。在没有空活动的情况下,代码运行良好。

主要活动(空)

代码语言:javascript
复制
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

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

public void statsButton(View view){
    Intent intent = new Intent(this, stats.class);
    startActivity(intent);
}

}

Stats.java (我希望选项卡式视图开始的位置)

代码语言:javascript
复制
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import androidx.viewpager.widget.ViewPager;
import com.google.android.material.tabs.TabItem;
import com.google.android.material.tabs.TabLayout;

public class stats extends AppCompatActivity {

private TabLayout tabLayout;
private ViewPager viewPager;
private TabItem tab1,tab2,tab3;
public PageAdapter pagerAdapter;



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

    tabLayout = (TabLayout) findViewById(R.id.tablayout);
    tab1 = (TabItem) findViewById(R.id.Tab1);
    tab2 = (TabItem) findViewById(R.id.Tab2);
    tab3 = (TabItem) findViewById(R.id.Tab3);
    viewPager = findViewById(R.id.viewpager);

    pagerAdapter = new PageAdapter(getSupportFragmentManager(), tabLayout.getTabCount());
    viewPager.setAdapter(pagerAdapter);

    tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            viewPager.setCurrentItem(tab.getPosition());
            if (tab.getPosition() == 0 ) {
                pagerAdapter.notifyDataSetChanged();
            }
            else if (tab.getPosition() == 1){
                pagerAdapter.notifyDataSetChanged();
            }
            else if (tab.getPosition() == 2){
                pagerAdapter.notifyDataSetChanged();
            }
        }
        @Override
        public void onTabUnselected(TabLayout.Tab tab) {

        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {

        }
    });

    viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));


}
}

由于某些原因,一旦点击统计按钮,这些错误就会出现在崩溃日志中,而我不知道问题是什么

crashlog

我的清单如下所示

代码语言:javascript
复制
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.emptytab">

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


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

EN

回答 2

Stack Overflow用户

发布于 2020-04-01 06:18:13

只需将此添加到您的AndroidManifest.xml即可

<activity android:name=".stats"> </activity>

代码语言:javascript
复制
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.emptytab">

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


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

注意::为了避免重复此问题,如果要添加新活动,请按照以下步骤操作:-右键单击>新建>活动>空活动

我希望它能对你有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2020-03-31 11:23:54

代码语言:javascript
复制
 <activity android:name="stats" />

将此行添加到您的AndroidManifest.xml中

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60942791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档