ダイアログにアクティビティコンテキストを渡していますが、そのダイアログは他のアクティビティに対してグローバルであるため、他のアクティビティもそのダイアログを作成する可能性があります。私の質問は、どのようにしてアクティビティコンテキストが特定のアクティビティであると判断できるのですか?
私はこのようにActivityContextを渡しています:
private Activity ActivityContext;
public MessageDialog(Activity context,int DialogStyle,int Dialog_Layout,String Msg)
{
super(context,DialogStyle,Dialog_Layout);
this.ActivityContext = context;
this.Msg = Msg;
}
Instanceofを使用できます。
if ( this.ActivityContext instanceof MyActivity ) {
/// ....
}
私は質問がJavaにあることを知っていますが、kotlinで答えを探している場合:
if (this.activity is AppActivity) {
// ...
}
override fun onAttach(context: Context) {
super.onAttach(context)
if (context is MyInterFace) {
interfaceVariable = context as MyInterFace
}
}