- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我正在使用平板电脑的 Fragments 创建一个应用程序。到目前为止,我已经在左侧创建了一些按钮,并且在单击按钮时会出现 fragment 。
但我的 MainActivity.java 文件出现错误“类型不匹配错误:无法从 android.app.FragmentManager
转换为 android.support.v4.app.FragmentManager
"这是我无法实现它的主要原因。我已经导入了 android.support.v4.app.FragmentManager
。
我该如何解决我的问题?
我的 MainActivity.java 代码
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
Fragment fragment;
Button btn1,btn2,btn3,btn4,btn5,btn6;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1=(Button)findViewById(R.id.btn1);
btn2=(Button)findViewById(R.id.btn2);
btn3=(Button)findViewById(R.id.btn3);
btn4=(Button)findViewById(R.id.btn4);
btn5=(Button)findViewById(R.id.btn5);
btn6=(Button)findViewById(R.id.btn6);
FragmentManager fm=getFragmentManager();
FragmentTransaction ft=fm.beginTransaction();
StartFragment myfragment=new StartFragment();
ft.add(R.id.myfragment,myfragment);
ft.commit();
btn4.setOnClickListener(btnOnClickListener);
btn5.setOnClickListener(btnOnClickListener);
btn6.setOnClickListener(btnOnClickListener);
}
Button.OnClickListener btnOnClickListener=new Button.OnClickListener(){
@Override
public void onClick(View v)
{
Fragment newfragment;
if(v==btn1)
{
newfragment=new Fragment1();
}
else if(v==btn2)
{
newfragment=new Fragment2();
}
else if(v==btn3)
{
newfragment=new Fragment3();
}
else if(v==btn4)
{
newfragment=new Fragment4();
}
else if(v==btn5)
{
newfragment=new Fragment5();
}
else if(v==btn6)
{
newfragment=new Fragment6();
}
else
{
newfragment=new StartFragment();
}
FragmentTransaction transaction=getFragmentManager.beginTransaction();
transaction.replace(R.id.myfragment,newfragment);
transaction.addToBackStack(null);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
transaction.commit();
}
};
}
最佳答案
您需要在代码中使用 getSupportFragmentManager()
,而不是 getFragmentManager()
- 请参阅 here了解更多详情。
您还需要从 android.support.v4.app.FragmentActivity
扩展您的类,而不仅仅是从标准 android.Activity
获取此方法。
关于java - 无法从 android.app.FragmentManager 转换为 android.support.v4.app.FragmentManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16690364/
我正在尝试在使用 androidX 的应用中进行设置。 我的问题是,当我尝试使用 PlaceAutocompleteFragment 时出现错误,因为它是来自 android.app.fragment
是否有人注意到 Android 11 的生命周期发生了任何明显的变化? 我的应用程序在 Android 11 之前的操作系统上运行良好,但在我的 Pixel 4 上每次都因错误而崩溃: E/Andro
我只是将项目移至androidX。我使用android studio refactor-> upgrade到androidX。 TargetSDK已经28岁了,并且工作正常。所以没想到会有很多错误。但
我正在学习 Android 开发。我卡在了本应非常简单的事情上。 我正在创建一个包含一个 Activity、2 个 fragment 和 1 个界面的应用。 android:minSdkVersion
我正在尝试获取一个对话框来警告用户应以横向模式查看屏幕。我有一个对话框类和我的 Activity 调用该对话框,但它提示 show(FragmentManager, String) 不适用于 show
我有一些嵌套的 fragment ,我想在 FragmentTabHost 内显示一个 Fragment。 在 FragmentTabHost setup(...) 方法中,第二个参数应该是 Frag
伙计们。 我为 Android API 14 及更高版本开发了一个应用程序,但我想使用 Android 支持库中的 ViewPager。 ViewPager 需要在构造函数中使用 android.su
FragmentManager manager = getFragmentManager(); 报错 required : android:support.v4.FragmentManager fou
我正在使用平板电脑的 Fragments 创建一个应用程序。到目前为止,我已经在左侧创建了一些按钮,并且在单击按钮时会出现 fragment 。 但我的 MainActivity.java 文件出现错
错误 错误类型不兼容:android.app.FragmentManager 无法转换为 android.support.v4.app.FragmentManager 让我抓狂。 在我的应用程序中,我
我收到以下错误 Type mismatch: cannot convert from android.app.FragmentManager to android.support.v4.app.Fra
编辑:这似乎只发生在我之前的 Activity 是横向的,并且 setRequestedOrientation() 是纵向的,这可能是什么问题? 我在一个 Activity 中有一个代码,它启动一个对
获取不兼容类型的 FragmentManager 的持续错误。需要支持库才能工作,但无法弄清楚。 Android Studio 说它需要支持导入,该支持导入就在那里,但找到了 androidx 导入。
更新: 我认为泄漏来自 getActivity().getSupportLoaderManager().restartLoader(getLoaderId(), null, this);我的对象实现
我尝试创建一个 Android 应用程序。在 Android Studio 中使用选项卡。我遇到了以下问题:我的所有 fragment 导入都导致了错误 Cannot Resolve Symbol '
使用我的 Fragment 类中的这段代码: FragmentManager fm = getFragmentManager(); 我得到了空值。为什么?我在android doc中找到了那句话: N
有没有办法从应用程序上下文中获取 FragmentManager?我想使用 ImageLoader 或 BitmapFun 来存储我从服务器下载的一些位图。这两个类都需要 FragmentManage
我对 FragmentManager 后台堆栈背后的基本原理有点困惑。 鉴于一个 Activity 有两个用于容纳不同 fragment 的容器:问题是当使用 fragment 事务将 fragmen
所以我在将 ViewPager 与 FragmentStatePagerAdapter 一起使用时遇到了这个问题然后我试图选择当前页面(即向用户显示第二页而不是第一页)我不时得到这个异常. 问题似乎是
在我的应用程序中有一个FrameLayout,我在上面添加了各种 fragment FragmentManager fm = getSupportFragmentManager(); Fragment
我是一名优秀的程序员,十分优秀!