如何在 Xamarin Android 对话框活动上动态设置标题?

zal*_*nix 2 xamarin.android

我在 Xamarin Android 上有 2 个活动。请注意,第二个样式设置为作为对话框打开。

[Activity(Label = nameof(ActivityOne), HardwareAccelerated = true, ScreenOrientation = Android.Content.PM.ScreenOrientation.Portrait)]
public class ActivityOne : Activity { ... }

[Activity(Label = nameof(ActivityTwo), HardwareAccelerated = true, ScreenOrientation = Android.Content.PM.ScreenOrientation.Portrait, Theme = "@android:style/Theme.Holo.Dialog")]
public class ActivityTwo : Activity { ... }
Run Code Online (Sandbox Code Playgroud)

第一个像这样调用第二个:

var activity = new Intent(this, typeof(ActivityTwo));
StartActivity(activity);
Run Code Online (Sandbox Code Playgroud)

当第二个活动打开时,我希望能够在对话框上动态设置标题。

我在第二个活动的创建中尝试这样做:

protected override void OnCreate(Bundle bundle)
{
    base.OnCreate(bundle);
    SetContentView(Resource.Layout.ActivityTwo);
    SetTitle(Resource.Id.title);

    ...
}
Run Code Online (Sandbox Code Playgroud)

其中 title 被定义为 ActivityTwo.axml 中的“隐藏”文本视图:

<TextView
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:id="@+id/title"
  android:text="Example Title"
  android:visibility="gone" />
Run Code Online (Sandbox Code Playgroud)

但这就是我在运行应用程序时得到的对话框标题:

对话活动标题

同样没有 SetTitle 行,标题只是“ActivityTwo”。有人可以帮我解决这个问题吗?

zal*_*nix 5

解决方法很简单,就是在 OnCreate() 中使用以下内容

this.Title = "ExampleTitle";
Run Code Online (Sandbox Code Playgroud)