فليكس: إزالة تنبيه برمجيا؟
-
06-09-2019 - |
سؤال
أحتاج إلى إزالة تنبيه برمجيا.
هذا هو السبب: يستخدم تطبيقي BrowserManager لتمكين الارتباط العميق المبني للمحتوى في الجزء #hash من عنوان URL. إذا كان التنبيه هو حاليا، فإن المستخدم يضرب الزر الخلفي، سيعود التطبيق إلى حالته السابقة. لكن التنبيه سيظل مرتفعا، وفي كثير من الحالات غير ذي صلة في تلك المرحلة.
فهل هناك طريقة لإزالة التنبيه برمجيا؟ لذلك عندما يتغير جزء التجزئة، يمكنني إزالته.
شكرا!
المحلول
اتضح أن الوظيفة تنبيه. إرجاع مرجع تنبيه ثم يستخدم فقط popupmanager لإضافته إلى قائمة العرض. لذلك إذا قمت بالتقاط مرجع الإرجاع عند الاتصال تنبيه يمكنك معرفة popupmanager لإزالته. :)
نصائح أخرى
يمكنك القيام بذلك عن طريق الحفاظ على Alert
كائن كبيانات عضو، ثم إعداده visible
الممتلكات إلى False عند الانتهاء من ذلك. في المرة القادمة التي تحتاج فيها إلى إظهار تنبيه، لا تنشئ واحدة جديدة - الاستيلاء على واحد قمت بإنشائه بالفعل وتعيين خصائصه، ثم اضبط visible
إلى صحيح مرة أخرى.
private var myAlert : Alert;
public void showAlert( message: String, title : String ) : void
{
hideAlert();
myAlert = Alert.show( message, title, Alert.OK | Alert.NONMODAL );
}
public void hideAlert() : void
{
if( myAlert != null && myAlert.visible ) {
myAlert.visible = false;
}
}
لا أعتقد أن هذا ممكن.
يمكنك إنشاء فئة مكون تنبيه الخاصة بك TitleWindow
ثم استخدم PopupManager
لإظهار / إخفاءها.