当前位置: 首页 > 知识库问答 >
问题:

自定义烤面包不显示消息

梁锋
2023-03-14

<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginBottom="24dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:background="@drawable/selector_custom_toast">

<TextView
    android:id="@+id/tv_toast_message"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginBottom="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:gravity="center_vertical|center_horizontal"
    android:lineSpacingExtra="4sp"
    android:singleLine="false"
    android:textAlignment="center"
    android:textColor="@android:color/black"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toStartOf="@+id/iv_toast"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    tools:text="Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast " />

<ImageView
    android:id="@+id/iv_toast"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:layout_marginBottom="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginTop="8dp"
    android:adjustViewBounds="true"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:srcCompat="@drawable/ic_error_outline_red_24dp"
    tools:ignore="ContentDescription" />

这是我的烤面包机功能代码:

    public void toaster(String message, int length, int form) {
    Toast toast = new Toast(context);
    if (toastLayout == null) {
        toastLayout = LayoutInflater.from(context).inflate(R.layout.custom_toast, null);
    }

    TextView toastMessage = toastLayout.findViewById(R.id.tv_toast_message);
    toastMessage.setText(message);
    toastMessage.setTypeface(MyApplication.getIranianSansFont(context));
    ImageView toastImage = toastLayout.findViewById(R.id.iv_toast);
    if (form == SUCCESS) {
        toastImage.setImageResource(R.drawable.ic_check_circle_green_24dp);
        toastMessage.setTextColor(context.getResources().getColor(R.color.greenSuccess));
    } else if (form == ERROR) {
        toastImage.setImageResource(R.drawable.ic_error_outline_red_24dp);
        toastMessage.setTextColor(context.getResources().getColor(R.color.redError));
    }

    toast.setDuration(length);
    toast.setView(toastLayout);
    toast.show();
}

共有1个答案

甘骞尧
2023-03-14

我刚才用的是线性布局而不是约束布局,这是约束布局出了问题!
我的线性布局代码:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|center_horizontal"
    android:layout_marginBottom="24dp"
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:background="@drawable/selector_custom_toast">

<TextView
    android:id="@+id/tv_toast_message"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_gravity="start|center_vertical"
    android:layout_marginBottom="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:layout_weight="1"
    android:gravity="center_vertical|center_horizontal"
    android:lineSpacingExtra="4sp"
    android:singleLine="false"
    android:textAlignment="center"
    android:textColor="@android:color/black"
    android:textDirection="rtl"
    tools:text="Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast Test Toast " />

<ImageView
    android:id="@+id/iv_toast"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:layout_gravity="end|center_vertical"
    android:layout_marginBottom="8dp"
    android:layout_marginEnd="8dp"
    android:layout_marginTop="8dp"
    android:adjustViewBounds="true"
    app:srcCompat="@drawable/ic_error_outline_red_24dp"
    tools:ignore="ContentDescription" />
 类似资料:
  • 我想为Windows Phone8.1开发一个包含本地“通知”的通用应用程序。 我想做的是在一个toast控件的扭结中向用户显示所有消息(错误、信息、警告)。所有的事情都是在本地完成的,而不需要经过标准的通知系统。在Windows Phone8上工作有几个系统: 吐司网(http://www.nuget.org/packages/toastinetwp/) conding4fun烤面包提示(htt

  • 我有自定义的消息onbeforeunload事件和工作良好,但我注意到今天它不再显示我的消息。相反,它显示“可能不会保存您所做的更改” 谁能告诉我如何修理它吗?

  • 我使用的是关于这个链接的教程: http://www.mkyong.com/spring-security/display-custom-error-message-in-spring-security/ 在登录表单上显示一个自定义错误消息,我在开始时就得到了它。但是在为自定义失败身份验证器处理程序声明authentication-failure-handler-ref=“myautherrorh

  • 欢迎的xml文件: 不是我还尝试了和。 代码的结果是打开屏幕,然后按下按钮--什么都没有发生。

  • 我正在编写一个PL/SQL过程。我对一列有一个约束,它不允许值低于0而高于500。如果违反了这个约束(例如,“ID超出范围”),我需要显示一条自定义消息。目前,这是一个异常,也是GET中的输出。还有另一个过程输出错误,因此使用RAISE_APPLCATION_ERROR。 谢谢。

  • 引用EAVSet.nsi的内容: !define PRODUCT_NAME "ESET NOD32 Antivirus" SetCompressor /SOLID lzma SetCompressorDictSize 32 !include "MUI.nsh" !include "UsefulLib.nsh" !define MUI_ABORTWARNING !define MUI_ICON