Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';t将类型(公共活动实例)强制转换为Xamarin Android C中的活动#_C#_Android_Xamarin_Xamarin.android - Fatal编程技术网

C# Can';t将类型(公共活动实例)强制转换为Xamarin Android C中的活动#

C# Can';t将类型(公共活动实例)强制转换为Xamarin Android C中的活动#,c#,android,xamarin,xamarin.android,C#,Android,Xamarin,Xamarin.android,我想从我的活动中访问公共类。我有一个名为HomePageActivity(它使用的是AppCompatActivity)的公共类,即公共类活动包含另一个名为Model.User CurrentUser(用于在登录后通过调用数据库模型属性上的userEmail调用当前用户)。HomePageActivity包含共享首选项,我使用当前用户、用户ID和电子邮件等变量存储所有用户数据,并且可以从另一个类调用它。在下一个活动(UploadActivity)中,我想访问HomePageActivity及其属

我想从我的活动中访问公共类。我有一个名为
HomePageActivity
(它使用的是
AppCompatActivity
)的公共类,即公共类活动包含另一个名为
Model.User CurrentUser
(用于在登录后通过调用数据库模型属性上的userEmail调用当前用户)。HomePageActivity包含共享首选项,我使用当前用户、用户ID和电子邮件等变量存储所有用户数据,并且可以从另一个类调用它。在下一个活动(UploadActivity)中,我想访问
HomePageActivity
及其属性

那么,我做什么:

  • 在我的下一个活动中声明
    HomePageActivity
    ,该活动位于
    UploadActivity
    ==>
    公共HomePageActivity m\u currentActivity
  • 调用
    m_currentActivity
    内部
    onCreate
    ,因为我使用的是
    Android.Support.V4.App.FragmentActivity
    =>
    m_currentActivity=(HomePageActivity)this.Activity
  • 尝试调用我所需区域==>
    m\u currentActivity.idUser上的
    m\u currentActivity
  • 但是,我失败了。我卡住了。我不能播放主页活动。幸运的是,我可以使用
    m_currentActivity=(HomePageActivity)this.Activity在我的
    Android.Support.V4.App.Fragment
    (在另一个片段上)但是,为什么在使用
    Android.Support.V4.App.FragmentActivity的
    UploadActivity
    中,我不能播放我的
    HomePageActivity

    如果我不使用
    m_currentActivity=(HomePageActivity)this.Activity会发生什么
    好的,根据我之前在片段和上传活动上的尝试和错误,如果我不声明并转换HomepageActivity,我就无法获得实体的值,比如我无法获得
    m\u currentActivity.idUser
    的值。如果我调试,它将返回null或崩溃

    object reference not set to an instance of an object
    

    我搜索了很多文章,但还是找不到答案。我希望听到你们所有人的回答和建议。提前感谢

    此.Activity仅在片段内部可用。如果您的
    UploadActivity
    继承自
    Android.Support.V4.App.FragmentActivity
    您将无法获得此.Activity。如果您在
    UploadActivity
    中运行任何片段,而不是在这些片段中运行任何片段,则您将获得此类型的活动
    UploadActivity


    如果您需要带一些数据到下一个活动,请使用意图。如果确实需要上一个活动的完整上下文,请在第一个活动中使用
    static
    属性,并在其中传递
    this
    。在这种情况下,您可以在
    HomePageActivity
    中创建一个类型为
    HomePageActivity
    的静态属性,并在其中的
    OnCreate
    方法pass
    中创建此
    (当前实例)。该物业将在整个项目中提供。如果绝对必要,一定要使用它

    各位,谢谢你们的回复。基本上,我使用intent并从主类访问。在此之前,我已经在我的主活动中放置了全局变量,因此,我可以调用它们并从主活动访问它们

    当我将属性设置为public时,我可以在第二个活动中访问一个活动的属性。你能给我们看一下要测试的代码吗?