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

时间:2017-02-16 10:25:42

标签: android android-fragments floating-action-button appcompatactivity

您好我想在Fragment Class上添加Floating Action Button,但是当我添加implements AppCompatActivity时,我收到此错误:

" getLoaderManager()'在' android.support.v4.app.Fragment' 与' getLoaderManager()'发生冲突在' android.app.Activity&#39 ;;尝试使用不兼容的返回类型"

public class home extends Fragment实现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();
        }
    });

}

}

3 个答案:

答案 0 :(得分:0)

只需从片段中删除“implements AppCompatActivity”,然后将“extends AppCompatActivity”添加到包含片段的活动中。

答案 1 :(得分:0)

我知道这个问题很老但是对于其他寻找此解决方案的人来说, 只需在onCreateView的结束括号之前的最后一个中写回返视图。

答案 2 :(得分:0)

您在实际使用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;