- Katılım
- 2 Ağu 2010
- Konular
- 5,440
- Mesajlar
- 24,645
- Online süresi
- 1ay 20g
- Reaksiyon Skoru
- 6,396
- Altın Konu
- 425
- Başarım Puanı
- 514
- TM Yaşı
- 15 Yıl 8 Ay 24 Gün
- MmoLira
- -2,502
- DevLira
- 0
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Xamarin - Android Widget'ları Kodlama Rehberi
Tarih Seçici
Bu, tarihi görüntülemek için kullanılan bir widget. Bu örnekte, ayarlanan tarihi bir metin görünümünde görüntüleyen bir tarih seçici oluşturacağız.
Öncelikle yeni bir proje oluşturun ve buna datePickerExample adını verin. Main.axml dosyasını açın ve bir tarih seçici, metin görünümü ve bir düğme oluşturun.
Kod:
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "vertical"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent">
<DatePicker
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/datePicker1" />
<TextView
android:text = "Current Date"
android:textAppearance = "?android:attr/textAppearanceLarge"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/txtShowDate" />
<Button
android:text = "Select Date"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/btnSetDate" />
</LinearLayout>
Ardından Mainactivity.cs'ye gidin. Önce mainActivity: Activity sınıfının içinde bir textview özel örneğini oluşturuyoruz.
Örnek, seçilen tarihi veya varsayılan tarihi saklamak için kullanılacaktır.
Kod:
private TextView showCurrentDate;
Ardından, setContentView () yönteminden sonra aşağıdaki kodu ekleyin.
Kod:
atePicker pickDate = FindViewById<DatePicker>(Resource.Id.datePicker1);
showCurrentDate = FindViewById<TextView>(Resource.Id.txtShowDate);
setCurrentDate();
Button button = FindViewById<Button>(Resource.Id.btnSetDate);
button.Click += delegate {
showCurrentDate.Text = String.Format("{0}/{1}/{2}",
pickDate.Month, pickDate.DayOfMonth, pickDate.Year);
};
Yukarıdaki kodda, FindViewById sınıfını kullanarak main.axml dosyamızdan bularak tarih seçicimize, metin görünümümüze ve düğmemize başvurduk.
Referans verdikten sonra, seçilen tarihi tarih seçiciden metin görünümüne geçirmekten sorumlu olan düğme tıklama olayını ayarlıyoruz.
Ardından, varsayılan geçerli tarihi metin görünümümüzde görüntülemek için setCurrentDate () yöntemini oluşturuyoruz. Aşağıdaki kod, nasıl yapıldığını açıklamaktadır.
Kod:
private void setCurrentDate() {
string TodaysDate = string.Format("{0}",
DateTime.Now.ToString("M/d/yyyy").PadLeft(2, '0'));
showCurrentDate.Text = TodaysDate;
}
DateTime.Now.ToString () sınıfı, bugünün saatini bir dize nesnesine bağlar.
Şimdi, Uygulamayı derleyin ve çalıştırın. Aşağıdaki çıktıyı göstermelidir -
Zaman Seçici
Zaman Seçici, zamanı görüntülemenin yanı sıra bir kullanıcının saati seçip ayarlamasına izin veren bir widgettır. Saati görüntüleyen ve ayrıca bir kullanıcının saati değiştirmesine izin veren temel bir zaman seçici uygulaması oluşturacağız.
Main.axml'ye gidin ve aşağıdaki kodda gösterildiği gibi yeni bir düğme, metin görünümü ve zaman seçici ekleyin.
Kod:
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "vertical"
android:background = "#d3d3d3"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent">
<TimePicker
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/timePicker1" />
<TextView
android:text = "Time"
android:textAppearance = "?android:attr/textAppearanceLarge"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/txt_showTime"
android:textColor = "@android:color/black" />
<Button
android:text = "Set Time"
android:layout_width = "200dp"
android:layout_height = "wrap_content"
android:id = "@+id/btnSetTime"
android:textColor = "@android:color/black"
android:background = "@android:color/holo_green_dark" />
</LinearLayout>
Oluşturduğumuz metin görünümünde belirli bir tarihi görüntüleme işlevini eklemek için MainActivity.cs adresine gidin.
Kod:
public class MainActivity : Activity {
private TextView showCurrentTime;
protected override void OnCreate(Bundle bundle) {
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
TimePicker Tpicker = FindViewById<TimePicker>(Resource.Id.timePicker1);
showCurrentTime = FindViewById<TextView>(Resource.Id.txt_showTime);
setCurrentTime();
Button button = FindViewById<Button>(Resource.Id.btnSetTime);
button.Click += delegate {
showCurrentTime.Text = String.Format("{0}:{1}",
Tpicker.CurrentHour, Tpicker.CurrentMinute);
};
}
private void setCurrentTime() {
string time = string.Format("{0}",
DateTime.Now.ToString("HH:mm").PadLeft(2, '0'));
showCurrentTime.Text = time;
}
}
Yukarıdaki kodda, ilk olarak, FindViewById <> sınıfı aracılığıyla zamanı göstermek için zaman alıcı, zaman ayar düğmesi ve metin görünümüne başvurduk. Daha sonra, tıklama zamanını bir kişi tarafından seçilen zamana ayarlayan saat ayarlama düğmesi için bir tıklama etkinliği oluşturduk. Varsayılan olarak, mevcut sistem saatini gösterir.
SetCurrentTime () yöntemi sınıfı, geçerli saati görüntülemek için txt_showTime metin görünümünü başlatır.
Şimdi uygulamanızı oluşturun ve çalıştırın. Aşağıdaki çıktıyı göstermelidir -
Spinner
Değer değiştirici, bir setten bir seçeneği seçmek için kullanılan bir widget'tır. Açılır menü / Birleşik giriş kutusunun eşdeğeridir. Her şeyden önce, yeni bir proje oluşturun ve buna Spinner App Tutorial adını verin.
Düzen klasörünün altında Main.axml'yi açın ve yeni bir değer değiştirici oluşturun.
Kod:
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "vertical"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent">
<Spinner
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/spinner1"
android:prompt = "@string/daysOfWeek" />
</LinearLayout>
Değerler klasörünün altında bulunan Strings.xml dosyasını açın ve dönen öğeleri oluşturmak için aşağıdaki kodu ekleyin.
Kod:
<resources>
<string name = "daysOfWeek">Choose a planet</string>
<string-array name = "days_array">
<item>Sunday</item>
<item>Monday</item>
<item>Tuesday</item>
<item>Wednesday</item>
<item>Thursday</item>
<item>Friday</item>
<item>Saturday</item>
<item>Sunday</item>
</string-array>
</resources>
Ardından, haftanın seçili gününü görüntüleme işlevini eklemek için MainActivity.cs dosyasını açın.
Kod:
protected override void OnCreate(Bundle bundle) {
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
Spinner spinnerDays = FindViewById<Spinner>(Resource.Id.spinner1);
spinnerDays.ItemSelected += new EventHandler
<AdapterView.ItemSelectedEventArgs>(SelectedDay);
var adapter = ArrayAdapter.CreateFromResource(this,
Resource.Array.days_array, Android.Resource.Layout.SimpleSpinnerItem);
adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropD ownItem);
spinnerDays.Adapter = adapter;
}
private void SelectedDay(object sender, AdapterView.ItemSelectedEventArgs e) {
Spinner spinner = (Spinner)sender;
string toast = string.Format("The selected
day is {0}", spinner.GetItemAtPosition(e.Position));
Toast.MakeText(this, toast, ToastLength.Long).Show();
}
Şimdi uygulamayı oluşturun ve çalıştırın. Aşağıdaki çıktıyı göstermelidir -
Yukarıdaki kodda, ana.axml dosyamızda oluşturduğumuz döndürücüye FindViewById <> sınıfı aracılığıyla başvurduk. Daha sonra dizi öğelerimizi strings.xml sınıfından bağlamak için kullandığımız yeni bir arrayAdapter () oluşturduk.
Son olarak, haftanın seçilen gününü görüntülemek için kullandığımız SelectedDay () yöntemini oluşturduk.


