java - Android:以编程方式在新 Activity 中创建线性布局

标签 java android

我正在尝试在另一个名为 MainFragment 的 Activity 中创建 LinearLayout。 在 onCreate 函数内部我使用了该行

LinearLayout parent = new LinearLayout(MainFragment.this);

使用this显示相同的错误

错误:

LinearLayout (andorid.content.Context) in LinearLayout cannot be applied to (com.example.name.nav_bar.MainFragment)

如果我尝试 MainActivity 中的代码,它工作正常。

最佳答案

试试这个:

LinearLayout parent = new LinearLayout(getActivity());

首次使用 fragment 时,了解它们与 Activity 有何不同非常重要。其中一种方式是,Activity 是 Android Context,但 Fragment 不是。许多事情都依赖于使用Context,因此如果您位于 Fragment 中,则需要某种方法来访问 Context。最简单的方法通常是调用 getActivity()(因为 Activity 就是一个 Context)。

关于java - Android:以编程方式在新 Activity 中创建线性布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53103994/

相关文章:

java - 解释这个简单的程序 - 桶排序

java - 关于 (""的索引)

java - 我的 ScrollView 不会滚动

android - 将任意线程附加到 Android JVM 的最佳策略

android - Gradle:将各种Jars添加为依赖项

java - 回文会跳过非字母的内容并且不关心大小写

java - 具有扩展枚举泛型的通用接口(interface)

java - 如何在同一个 onTimeSet() 中提取两个时间选择器对话框的小时和分钟?

android - 如何在Android中制作传统蒙文字体TextView

android - SharedPreference 给我未知的日志