java - 为什么gradientdrawable.setBackground会让我的应用程序崩溃?

标签 java android android-layout gradientdrawable

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {


        GradientDrawable drawable = new GradientDrawable();
        drawable.setShape(GradientDrawable.RECTANGLE);
        drawable.setStroke(3, Color.GREEN);

        View view = inflater.inflate(R.layout.primary, container, false);
        LinearLayout layout = (LinearLayout ) view.findViewById(R.layout.primary);
        // 1 layout.setBackground(fragmentBorder); <----
                // ^ above line causes the crash ^

        layout.setBackgroundDrawable(drawable); 
        return view; 
    }

没有编译错误,只是在测试时崩溃了

最佳答案

LinearLayout layout = (LinearLayout ) view.findViewById(R.layout.primary);

请将上面的行更改为

 LinearLayout layout = (LinearLayout ) view.findViewById(R.id.primary);

你的线性布局仍然为空,这就是它崩溃的原因

关于java - 为什么gradientdrawable.setBackground会让我的应用程序崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46986440/

相关文章:

java - 使用键、值对实现 MaxHeap

java - 当我尝试启动计时器时出现 NullPointerException

java - 显示启动画面,然后显示 AppIntro(首次启动)而不是 mainactivity 不工作

android - react-native:文件 android/java_pid14920.hprof 为 311.59 MB;这超出了 GitHub 的文件大小限制

android - 在 Android 布局中使用 <Space>

java - 使 EditText 字段不可编辑

java - 为什么这个 RecyclerView + CardView 示例不起作用?

java - 如何将对象输入到 ArrayList <HashMap<String,Object>>

java - <com.chaos.view.PinView,这对我来说什么都不显示

android - Appbarlayout 与 NestedScrollView 重叠