在片段上实现浮动操作按钮 Class

Implementing Floating Action Button on a Fragment Class

您好,我想在 Fragment 上添加浮动操作按钮 Class,但是每当我添加实现 AppCompatActivity 时,我都会收到此错误:

'android.support.v4.app.Fragment' 中的“getLoaderManager()” 与 'android.app.Activity' 中的 'getLoaderManager()' 冲突;试图使用不兼容的 return 类型

public class home extends Fragment implements AppCompatActivity{

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.home, container, false);
    return rootView;

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                    .setAction("Action", null).show();
        }
    });

}

}

只需从片段中删除 "implements AppCompatActivity" 并将 "extends AppCompatActivity" 添加到包含片段的 activity 中。

我知道这个问题很老了,但对于正在寻找此解决方案的其他人来说, 只需 在 onCreateView 的右括号之前的最后一个 写入 return 视图。

你 return 在实际使用 fab 之前的 rootview。

View rootView = inflater.inflate(R.layout.home, container, false);


    FloatingActionButton fab = (FloatingActionButton) rootView.findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                    .setAction("Action", null).show();
        }
    });

    return rootView;