不能在自定义通知中包含简单视图?

时间:2017-12-21 06:20:51

标签: android android-layout view notifications

在我的index.php?article_category=$1我正在构建一个自定义app,其notification大约为big view

150dp如下所示

layout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/imagenotileft" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/imagenotileft" /> <View android:id="@+id/view" android:layout_width="365dp" android:layout_height="@dimen/dp_2" android:layout_marginTop="@dimen/dp_23" android:layout_centerHorizontal="true" android:layout_below="@+id/title" android:background="@color/comunica_app_light_grey" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/view" android:layout_toRightOf="@+id/imagenotileft" /> <ImageView android:id="@+id/imagenotiright" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:padding="10dp" /> </RelativeLayout> 组件在调用创建View函数时导致app崩溃。notification部分没有任何问题,因为它在没有{{{{}}的情况下完全膨胀1}}组件。

错误期间的日志如下所示。

code

我无法弄清楚原因是什么造成的。

请提供解决方案。

2 个答案:

答案 0 :(得分:0)

您已为视图添加了此ID

 android:id="@+id/title"

并且以下ID未分配给任何视图

@+id/send_date

这可能是问题

答案 1 :(得分:0)

您必须添加自定义视图所需的所有构造函数。如果您使用android studio查找Code-&gt; Generate,然后&#34; constructor&#34;,然后检查所有可用的构造函数,在下一个窗口中您必须取消选中所有类属性,然后IDE为您生成此构造函数。

public class CustomView extends View {    
    public CustomView(Context context) {
        super(context);
    }

    public CustomView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(attrs);
    }

    public CustomView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init(attrs);
    }
}