放大片段时出错,但可在活动中使用

时间:2019-07-15 06:20:02

标签: java android

我试图在显示n * n表的片段中增加一个类。当我在活动中设置它但在片段中给出错误时,它可以工作。下面提供了代码。

活动:

public class Main3Activity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(new TableMainLayout(this));
    }
}

片段


@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        setHasOptionsMenu(true);

        return inflater.inflate(new TableMainLayout(context), container, false);
    }

它给了我这个错误

  

“无法解析方法'inflate(com.example.wasalahore.TableMainLayout,android.view.ViewGroup,boolean)“ **在线返回inflater.inflate(new TableMainLayout(context),container,false);

1 个答案:

答案 0 :(得分:0)

这是因为每当您在Activity中使用以下代码时:

setContentView(new TableMainLayout(this));

将使用setContentView(android.view.View)

但是没有Inflater.inflate()的等效方法,其中view是参数之一。您可以使用的最接近的inflate(int resource, ViewGroup root, boolean attachToRoot)

您不能使用以下内容:

return inflater.inflate(new TableMainLayout(context), container, false);

因为方法Inflater.inflate(View view, ViewGroup root, boolean attachToRoot);没有退出。

您需要为Inflater.inflate方法使用XML布局资源。像这样:

return inflater.inflate(R.layout.your_layout, container, false);