gpt4 book ai didi

java - 尝试在 android 中实现滑动 View 时出错

转载 作者:太空宇宙 更新时间:2023-11-04 12:50:38 25 4
gpt4 key购买 nike

抱歉,代码转储,我是 Android 新手,不知道问题出在哪里。我正在尝试在我的 Android 应用程序中实现滑动 View ,但遇到了一些麻烦。我尝试遵循 this tutorialthis video但我收到一些错误。我想要在我的 MainActivity

中使用选项卡式界面

这是我的MainActivity.java

package com.loomius.loomius;

import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);

ViewPager viewPager = (ViewPager) findViewById(R.id.pager);
PagerAdapter pagerAdapter = new FixedTabsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(pagerAdapter);

}
}

我收到 getSupporFragmentManager() 的此错误

'FixedTabsPagerAdapter(android.app.FragmentManager)' in 'com.loomius.loomius.FixedTabsPagerAdapter' cannot be applied to '(android.support.v4.app.FragmentManager)'

这是我的FixedTabsPagerAdapter.java

package com.loomius.loomius;

import android.app.FragmentManager;
import android.content.Context;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.app.Fragment;

import values.MatchesFragment;
import values.SuggestedSongsFragment;
import values.UserFragment;


public class FixedTabsPagerAdapter extends FragmentPagerAdapter{
public FixedTabsPagerAdapter (FragmentManager fm) {
super(fm);
}

@Override
public int getCount() {
return 4;
}

@Override
public Fragment getItem(int position) {
switch(position) {
case 0:
return new SearchFragment();
case 1:
return new UserFragment();
case 2:
return new MatchesFragment();
case 3:
return new SuggestedSongsFragment();
default:
return null;
}
}

Context context;

@Override
public CharSequence getPageTitle (int position) {
switch(position) {
case 0:
return context.getResources().getString(R.string.search_frag_title);
case 1:
return context.getResources().getString(R.string.user_frag_title);
case 2:
return context.getResources().getString(R.string.matches_frag_title);
case 3:
return context.getResources().getString(R.string.sugg_frag_title);
default:
return null;

}
}
}

我在重写方法 getItem 中收到返回类型 Fragment 的错误

'getItem(int)' in 'com.loomius.loomius.FixedTabsPagerAdapter' clashes with 'getItem(int)' in 'android.support.v13.app.FragmentPagerAdapter'; attempting to use incompatible return type

我将 android.support.v4.view.ViewPager 小部件放在 activity_main.xml 中,位于 android.support.v7.widget.Toolbar 小部件的正下方。

最佳答案

看看你的FixedTabPagerAdapter构造函数,你试图在传递android.support.v4.app.FragmentManager类型的 fragment 管理器时捕获android.app.FragmentManager实例的引用,这是两个不同的类。

将FixedTabPageAdapter中的FragmentManager类型更改为android.support.v4.app.FragmentManager,它应该可以解决问题。

关于java - 尝试在 android 中实现滑动 View 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35870479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com