我在 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”。有人可以帮我解决这个问题吗?
解决方法很简单,就是在 OnCreate() 中使用以下内容
this.Title = "ExampleTitle";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2965 次 |
| 最近记录: |