相关疑难解决方法(0)

Android - 活动与FragmentActivity?

我是Android新手.我想用标签格式构建一个应用程序.我发现许多文档Activity已被使用.在许多情况下也使用过FragmentActivity.我不确定哪个更好开始.请建议我应该使用ActivityFragmentActivity以标签格式开始开发?

android android-activity android-fragmentactivity

83
推荐指数
2
解决办法
11万
查看次数

扩展LifecycleActivity,Activity,ActionbarActivity和AppCompactActivity之间的区别?

在Android中,扩展Lifecycler Activity,Activity,ActionBarActivity和AppCompactActivity之间的主要区别是什么?这些类在使用方面有何不同?

android android-fragments android-activity android-actionbar

69
推荐指数
2
解决办法
6万
查看次数

v4带活动的getFragmentManager - 不兼容的类型

我有一个按预期运行的简单活动.

import android.app.Activity;
import android.app.FragmentManager;
// import android.support.v4.app.FragmentManager;
import android.os.Bundle;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // FragmentManager fm = getSupportFragmentManager(); // ActionBarActivity
        FragmentManager fm = getFragmentManager(); // Activity
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我换了

import android.app.FragmentManager;
Run Code Online (Sandbox Code Playgroud)

import android.support.v4.app.FragmentManager;
Run Code Online (Sandbox Code Playgroud)

所以我可以支持我的旧设备..但是,这报告错误:

Incompatible types.

    Required: android.support.v4.app.FragmentManager

    Found: android.app.FragmentManager
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

我发现流行的解决方案是使用getSupportFragmentManager(),但这仅适用于ActionBarActivites [编辑 - 请参阅答案]和FragmentActivities.

无法从android.app.FragmentManager转换为android.support.v4.app.FragmentManager

另一个相关的解决方案指向使用FragmentActivity,但这似乎有相同的遗留问题.

对于MyActivity类型,未定义getFragmentManager()方法

import android.support.v4.app.FragmentManager;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;

    public class MainActivity extends FragmentActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);
        // …
Run Code Online (Sandbox Code Playgroud)

android fragment android-activity

22
推荐指数
1
解决办法
5万
查看次数

片段和活动之间的核心区别是什么?哪些代码可以用片段写?

我有三个标签,每个标签有三个片段和一个主要活动,我想创建套接字通过wifi网络发送消息,那么我应该在哪里编写代码呢?在那个特定的片段类或主要活动?

android fragment android-intent android-layout android-fragments

15
推荐指数
1
解决办法
1万
查看次数

总是使用v4 Fragments而不是内置的android.app.Fragment?

我遇到了ViewPager和相关的FragmentPagerAdaptor,它们不是常规Android软件包的一部分,但仅在V4支持包中提供.似乎我不能将FragmentPagerAdaptor与android.app.Fragment一起使用,因为FragmentPagerAdaptor需要v4 FragmentManager来实例化.读取Activity和FragmentActivity之间的区别似乎是对齐的 - 使用v4 Fragments和相关类或常规android.app.Fragments.永远不要混

更进一步,我认为根本不需要使用常规的android.app.Fragments,因为它们不如v4支持包强大.(引用另一个问题:Android支持包不仅适用于较新API的后端端口.它还适用于其他类,无论出于何种原因,它们都未添加到SDK中,例如ViewPager及其支持类.).我能想到的"唯一"缺点是v4支持库与APK捆绑在一起,这意味着我的应用程序将占用更多空间.

我是否正确得出结论,我应该始终使用v4支持库来获取片段,因为那些包含更多功能?(它们向后兼容,不要忘记.)

android android-fragments

13
推荐指数
1
解决办法
3967
查看次数

FlutterActivity 与 FlutterFragmentActivity

我试图将local_auth包实现到我的 Flutter 应用程序中。

在文档中,提到它必须在我的 MainActivity 类中使​​用FlutterFragmentActivity而不是使用。FlutterActivity

所以我想知道什么是主要的differences between FlutterFragmentActivity以及FlutterActivity两者如何影响应用程序performance

:) 因为我不想在生产中进行更改并破坏应用程序。

authentication android flutter flutter-dependencies pubspec

8
推荐指数
1
解决办法
3770
查看次数

从活动调用getSupportFragmentManager()时出错

我正在尝试使用片段实现滑动视图.但是对我来说,扩展简单的活动而非片段活动非常重要.我在下面编写的代码中的getSupportFragmentManager()上收到错误:

public class CollectionDemoActivity extends Activity {

DemoCollectionPagerAdapter mDemoCollectionPagerAdapter;

ViewPager mViewPager;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_collection_demo);


    mDemoCollectionPagerAdapter = new DemoCollectionPagerAdapter(getSupportFragmentManager());

    mViewPager = (ViewPager) findViewById(R.id.pager);
    mViewPager.setAdapter(mDemoCollectionPagerAdapter);
}

public static class DemoCollectionPagerAdapter extends FragmentStatePagerAdapter {

    public DemoCollectionPagerAdapter(FragmentManager fm) {
        super(fm);
        //int x=10;
    }

    @Override
    public Fragment getItem(int i) {
        Fragment fragment = new DemoObjectFragment();
        Bundle args = new Bundle();
        args.putInt(DemoObjectFragment.ARG_OBJECT, i + 10); 
        fragment.setArguments(args);
        return fragment;
    }

    @Override
    public int getCount() {
        // For this contrived …
Run Code Online (Sandbox Code Playgroud)

android android-fragments swipeview

3
推荐指数
1
解决办法
1万
查看次数