自訂 Application
namespace ApplicationLogin
{
// 一定要有 Application Attribute
[Application]
public class MyApplication : Android.App.Application
{
public string UserName { get; set; }
public MyApplication(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer)
{
this.UserName = "Unkown";
}
public override void OnCreate()
{
base.OnCreate();
Toast.MakeText(this, "執行 MyApplication", ToastLength.Long).Show();
}
}
}
Loginlayout.axml<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minWidth="25px"
android:minHeight="25px">
<LinearLayout
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout1">
<TextView
android:text="使用者名稱:"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/textView1"
android:textSize="20dp"
android:gravity="center" />
<EditText
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/txtUserName"
android:hint="請輸入使用者名稱"
android:inputType="text" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout3">
<Button
android:text="登錄"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/btnLogin" />
</LinearLayout>
</LinearLayout>
Layout1.axml:沒有任何控件<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" />
LoginActivity.csnamespace ApplicationLogin
{
[Activity(Label = "ApplicationLogin", MainLauncher = true, Icon = "@drawable/icon")]
public class LoginActivity : Activity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.Loginlayout);
FindViewById<Button>(Resource.Id.btnLogin).Click += (sender, e) =>
{
MyApplication app = (MyApplication)this.Application;
app.UserName = FindViewById<EditText>(Resource.Id.txtUserName).Text.Trim();
this.StartActivity(typeof(Activity1));
};
}
}
}
Activity.csnamespace ApplicationLogin
{
[Activity(Label = "Activity1")]
public class Activity1 : Activity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
MyApplication app = (MyApplication)this.Application;
Toast.MakeText(this, app.UserName, ToastLength.Long).Show();
}
}
}
執行 App在 Activity1 內把 MyApplication.UserName 資訊顯示出來
![[X.Andriod] Application-1](https://c7.staticflickr.com/8/7259/27959462246_92ffe6489a.jpg)
![[X.Andriod] Application-4](https://c7.staticflickr.com/8/7273/27892155462_ac13faaaa0.jpg)
![[X.Andriod] Application-2](https://c3.staticflickr.com/8/7459/27959462386_15093ee5c3.jpg)
![[X.Andriod] Application-3](https://c1.staticflickr.com/8/7367/27959462336_d0951c8830.jpg)
沒有留言:
張貼留言