kodlama öğrenmek istiyorum etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
kodlama öğrenmek istiyorum etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

8 Şubat 2019 Cuma

APP INVENTOR DERS-6

SPINNER VE NOTIFIER KULLANIMI

Bu projemizde ListView ve PasswordTextBox 'da kullanıyoruz.ListView, işlevi ListPicker ile aynı görüntüleri farklı.PasswordTextBox 'ın normal olandan tek farkı, yazdıklarınızın yıldız/küçük yuvarlaklar olarak gözükmesi.
Bu dersimizde bir hastane randevu alma uygulaması yapmaya çalışıyoruz.
Screen1 Bileşenleri
Bileşenlerimizi isimlendirerek başlıyoruz.
  • TextBox1 = txtKullaniciAdi , Hint özelliği: Kullanıcı Adı Giriniz
  • PasswordTextBox1 = pas_txtSifre , Hint özelliği: Şifre Giriniz
  • Button1 = btnGirisYap , Text özelliği: Giriş Yap
Ekran2 Bileşenleri
  • Spinner1 = spnBolumAdlari , ElementFromString: "Genel Cerrahi, İç Hastalıkları, Nöroloji"
  • ListView1 = lstGenelCerrahi ,Visible = False, ElementFromString: "Dr. Ayşe Budak, Dr. Hüseyin Yıldırım, Doç. Dr. Sabi Kalpli" (İsimler hayal ürünüdür)
  • ListView2 = lstIcHastaliklari ,Visible = False, ElementFromString: "Dr. Melek Kaya, Doç. Dr. Zeynep Yıldırım, Prof. Dr. Haki Bıyıklı"(İsimler hayal ürünüdür)
  • TimePicker1 = tmpRandevuSaati , Text: "Randevu Saatini Belirlemek İçin Tıklayın"
  • Button1 = btnTamamla , Text: "İşlemi Tamamla"
  • Label1 = lblSonucYaz , Text: " "
  • Notifier1 = ntfUyarici
  1. ListPicker kullanımını anlatmıştık, aynı şekilde Spinner içerisinde yer almasını istediklerimizi arasına virgül koyarak yazıyoruz.
  2. Bu metin kutusuna liste açıldığında başlık(title) olarak ne yazmasını istiyorsanız yazabilirsiniz."Randevu almak istediğiniz bölümü seçiniz"
  3. Ekrana sürüklediğiniz Notifier 'in ekranda görünmediğini farketmişsinizdir. Bu ve benzeri bileşenler burada Non-visible components(görünmez bileşenler) kısmında yer alır.
  1. "btnGirisYap" a tıklandığında,
  2. Eğer,
  3. Kullanıcı "pas_txtSifre" içerisine "admin123" , 
  4. Ve, 
  5. "txtKullaniciAdi" içerisine de "KodMaceralarim" yazdıysa, (kayıt ol/giriş yap projemizde ki kodları kullanabiliriz ama basit tutmak açısından bu şekilde kodluyoruz.)
  6. Ekran2 'yi aç
Ekran2 ye geçildiğinde ilk yapılacak olan "spnBolumAdlari" içerisinden randevu alacağımız bölümü seçmek
  1. Kullanıcı bölüm seçtiğinde veriyi tutmak için değişken oluşturuyoruz.
  2. Kullanıcı "spnBolumAdlari" ndan seçim yaptıktan sonra çalışacak kodları bu blok içerisine yerleştiriyoruz.
  3. Kullanıcının yaptığı seçimi oluşturduğumuz değişkene atıyoruz.
  4. "get selection" kod bloğunu buradan alabilirsiniz.
  5. Eğer, "secilenBolum" = "Genel Cerrahi" ise
  6. Genel Cerrahi doktorlarının yer aldığı "lstGenelCerrahi" nin visible özelliğini true yap(Böylece kullanıcımız istediği doktoru seçerek devam edebilir.)
  7. Eğer, "secilenBolum" = "İç Hastalıkları" ise
  8. "lstIcHastaliklari".Visible = true
  9. Eğer "secilenBolum" = "Nöroloji" ise
  10. "lblSonucYaz".Text = "Nöroloji bölümünü hizmete açmak için çalışmalarımız devam ediyor" olarak set et.
  11. ve 12. bloklar :Eğer kullanıcı ikinci kez randevu almak isterse diye listelerin visible özelliklerini false yapıyoruz.Blokları silerek aradaki farkı görebilirsiniz.
Randevu almak istediğimiz bölümü seçtiğimize göre sıra, hangi doktora muayene olmak istediğimizi seçiyoruz.
  1. "lstGenelCerrahi" listesinden seçim yapıldıktan sonra,
  2. Kullanıcı 1 'den fazla randevu aldığında yazılar üst üste binmesin diye sıfırlıyoruz, bu kod bloklarını silip neden ihtiyaç duyduğumuzu daha net görebilirsiniz.
  3. Bölüm ve doktor seçimi yapmadan "btnTamamla" ya tıklanamasın diye visible = false yapıyoruz.
  4. Pek çok yazılım dilinde görebileceğiniz bu kod, bir alt satıra  inmeyi sağlar.
  5. Kullanıcının seçtiği doktor adını oluşturduğumuz mesaja yerleştiriyoruz.
  6. Bölüm ve doktor seçimi tamamlandığına göre "btnTamamla".Visible = true olarak set edebiliriz.(Aynı bloğu "lstIcHastaliklari" için de yapıyoruz.)
  1. "btnTamamla".Click altındaki if kontrolünde kullanmak için "sayac" adında değişken oluşturuyoruz.
  2. "tmpRandevuSaati" kullanılarak randevu saati seçildiğinde sayacı 1 yap.
  3. "btnTamamla" ya tıklandığında,
  4. Eğer, "sayac" adındaki değişken 0 dan büyükse(yani randevu saati seçildiyse) 
  5. "lblSonucYaz".Text i şu şekilde set et: Doktor adı seçerken yazdırdıklarımız ("lstGenelCerrahi".AfterPicking veya "lstIcHastaliklari".AfterPicking den gelen kısım) + 
  6. "tmpRandevuSaati" kullanarak seçtiğimiz zamanın saat kısmı +
  7. "tmpRandevuSaati" kullanarak seçtiğimiz zamanın dakika kısmı
  8. "lblSonucYaz" a ekrana göstermek istediğimiz yazıları ekleme işlemini bitirdiğimize göre artık visible = true yapabiliriz.
  9. Else(başka) durumunda, yani if yanındaki şart sağlanmazsa aşağıdaki kodları çalıştır.("sayac" adındaki değişken 0 'dan büyük değilse, randevu saati seçilmemişse)
  10. "ntfUyarici" yi çağır(call).(Notifier için pek çok hazır kod bloğu seçeneği arasından bu proje için "ShowMessageDialog(Mesajı/diyaloğu göster)" seçildi. )
  11. "Randevu saati seçmeden kayıt tamamlanamaz" mesajını bir uyarı penceresi ile ekrana yaz.
  12. Uyarı penceresinin başlığında "Uyarı!" yaz.
Ekran2 kod bloklarının son hali


İYİ ÇALIŞMALAR

APP INVENTOR DERS-5

Image ve ListPicker Kullanımı

ListPicker, görüntüsü buton ile aynı, işlevi ise tıkladığınızda seçim yapmanız için bir liste açmaktır. Bu dersimizde 1 adet ListPicker, 1 adet Label, 8 adet Image(Sayıyı isteğinize göre değiştirebilirsiniz) kullanıyoruz.Proje akışımız basit: ListPicker'a tıklandığında bizim ayarladığımız(nasıl ayarlandığı aşağıda ki resimde gösteriliyor) şehirler listesinden seçtiğimiz şehrin plaka kodunu Label'a yazdırmak ve o şehirle alakalı bir görseli ekranda göstermek.Benim seçtiğim iller: İstanbul, Ankara, İzmir, Adana, Rize, Kayseri, Malatya, Diyarbakır .Her şehir için birer tane görsel indirmeyi unutmayın.

ListPicker'a Liste Elemanı Ekleme
  1. ElementsFromString(String Elemanlar) yazısının altında ki textbox'a aralarına virgül koyarak yazdığınız her şey liste elemanına dönüşür.
  2. İndirdiğiniz resimleri  Media altındaki "Upload File..." yazısına tıklayıp kaydettiğiniz dosya konumundan projenize yükleyebilirsiniz.
Bileşenlerimizi isimlendirmeyi unutmayalım.
  • ListPicker1 = lspSehirSec , Text özelliği: "Bir Şehir Seçiniz"
  • Label1 = lblPlakaYaz        , Text özelliği: " "
  • Image1 = imgIstanbul
  • Image2 = imgAnkara
  • Image3 = imgIzmir
  • Image4 = imgAdana
  • Image5 = imgRize
  • Image6 = imgKayseri
  • Image7 = imgMalatya
  • Image8 = imgDiyarbakir
  1. Her bir Image bileşenimizin Picture özelliğinin altındaki textbox'a tıkladığımızda Media kısmına yüklediğimiz görsellerin seçilebilir olduğunu görebiliriz.
  2. Eğer bu kutuyu işaretlerseniz görselin orijinal boyutunu yok sayacak ve telefonun ekranına görseli sıkıştıracaktır.
  3. Projenizin telefon ekranının resimdeki gibi görünmesi için bütün Image'lerin visible (görünürlük) özelliklerini false(yanlış/kapalı) yapmanız gerekli.
Değişken oluşturmayı ve liste yapmayı önceki dersimizde görmüştük.Şekilde gördüğünüz gibi listeleri ve değişkeni oluşturalım.Şehirlerin isimleri ile plaka kodlarının aynı sırada olması önemli.
Dersin daha anlaşılır olması için kullanıcının İzmir'i seçtiğini varsayarak devam ediyoruz
  1. (when "lspSehirSec" .AfterPicking yani "lspSehirSec" ile seçim yapıldıktan sonra aşağıdaki kodları çalıştır) "lblPlakaYaz" ın text özelliğini,
  2.  "Seçtiğiniz ilin plaka kodu:"+ "35" şeklinde set et.(İzmir'i seçtiğimizi varsaydığımız için 35 i kullandık.)
  3. Lists kısmından alınan bu kod bloğu,
  4. Buraya konulan listede,
  5. Buraya konulan elemanı arar ve indexini bulur.("lspSehirSec".Selection=Seçilen "lspSehirSec" elemanı)(İzmir seçildiğini varsaydığımız için index numarası 3 olarak dönecektir.)
  6. List kısmından alınan bu kod bloğu,
  7. Buraya konulan listeden, aşağıdan gelen index numarasına sahip elemanını seçer.(İndex numaramız 3 olduğundan ve "plakaKodlari" listesinin 3 numaralı elemanı da 35 olduğundan belirttiğimiz şekilde "Seçtiğiniz ilin plaka kodu:35" yazdırdık.)
  8. Kullanıcının seçtiği ilin liste index numarasını "secilenVeri" değişkenine atıyoruz.
  9. Projemiz büyüdükçe kod bloklarımız da büyüyor ve çalışma ekranımıza sığmaz hale gelmeye başlıyor.Daha kolay çalışmak için: Ctrl ye basılı tutarken farenizin kaydırağını kullandığınızda kod bloklarının boyutlarını ayarlayabilirsiniz veya kod bloklarına sağ tıklandığında açılan menüyü kullanabilirsiniz.En sık kullanılan sağ click özelliklerini açıklayarak devam edelim.
  • Duplicate: Hangi bloğun üzerindeyken sağ tıkladıysanız o blok ve altındaki bütün kod bloklarını kopyalar.
  • Collapse Block: Benim listelere uyguladığım gibi, kodlamayı bitirdiğiniz blokları collapse ederek(sıkıştırarak) daha az yer kaplamasını sağlayabilirsiniz.
  • Expand Block: Sıkıştırdığınız herhangi bir bloğu açmak için kullanabilirsiniz.
  • Disable Block: Yazdığınız bir bloğu silmek istemiyorsunuz ama işlevselliğini/ulaşılabilirliğini kapatmak istiyorsanız kullanabilirsiniz.
  • Add to Backpack:Yazdığınız herhangi bir kodu başka projelerinizde veya ekranlarda kullanacağınızı düşünüyorsanız, bu seçeneği kullanarak üzerindeyken sağ tıkladığınız o blok ve altındaki bütün kod bloklarını çantaya eklemiş olursunuz.Bu işlemi yaptığınızda çalışma ekranınızın sağ üst köşesindeki çantanın açıldığını göreceksiniz.Çantaya tıklayıp eklediğiniz bütün kodları görebilirsiniz.
Buraya kadar kullanıcının hangi ili seçtiğini öğrenip plaka kodunu ekrana yazdırdık.Şimdi seçilen ilin index numarasını "secilenVeri" değişkeni sayesinde bildiğimize göre buna uygun görseli görünür kılabiliriz.Bunu: eğer "secilenVeri=3" ise "imgIzmir" in visible özelliğini true(doğru/açık) olarak set et diyerek yapabiliriz.Yani if-then bloğu kullanmamız gerekiyor. Her il için bir tane if-then bloğu kullanarak da yapabiliriz fakat blokların sol üst köşelerinden çentik sayılarını artırabildiğimizi unutmayalım.Üstelik ayrı ayrı if-then blokları kullanmak programımızı daha ağır bir hale getirecektir.
Bu işlemde kullanıcının bir il seçiminden sonra gerçekleşeceği için bu kodları da "AfterSelection" bloğunun en altına yerleştiriyoruz. Kod bloklarının son halini aşağıda görebilirsiniz.
Soru1: Zaten Image'lerin visible özelliği false'iken neden tekrar kod içerisinde false yapmamız gerekti?
Soru2: Projede yapmak istediklerimizi daha az, hızlı çalışan kod blokları ile yapabilir miyiz? Yapabiliyorsak Nasıl?
(Cevaplarınızı yorum olarak bekliyorum.)


 İYİ ÇALIŞMALAR😁

7 Şubat 2019 Perşembe

APP INVENTOR DERS-4

BİR KLASİK(SIGN IN/LOGIN )

Kodlama dünyasına merhaba dedikten sonra pek çok uygulamada kullanılan kayıt ol ve giriş ekranını kodlayarak eğitime devam ediyoruz.
Bileşenlerimizi Ekliyoruz
Eklediğimiz bileşenlerin isimlerini ve kullanıcıya görünen text özelliğini ayarlayıp devam ediyoruz.
  • TextBox1 = txtKullaniciAdi , Hint özelliği: Kullanıcı Adı Belirleyin
  • TextBox2 = txtSifre , Hint özelliği: Şifre Belirleyin
  • DatePicker1 = dtpDogumGunuAl , Text özelliği: Doğum Tarihinizi Girin
  • CheckBox1 = chcKabul , Text özelliği: Kullanıcı sözleşmesini okudum ve kabul ediyorum
  • Button1 = btnKayitOl , Text özelliği: Kayıt Ol

  1. Bir önceki derste gördüğümüz gibi buton için tıklama olayını kullanıyoruz.Uygulamaların kayıt olma mantığını düşünürsek, eğer kullanıcı, kullanıcı sözleşmesini kabul ettiyse metin kutusuna girdiği kullanıcı adını, şifreyi ve doğum gününü kaydet.
  2. MIT'nin bizim için hazırladığı hazır kodlardan Control içindeki if-then kod bloğunu alarak buton click olayının içine yerleştiriyoruz.
  3. "Eğer kullanıcı, kullanıcı sözleşmesini kabul ettiyse" şartını bu if bloğuyla sağlıyoruz. if 'deki şart yerine geldiğindeyse then kısmına yerleştirdiğimiz kod blokları çalışır.
  1. Genelde uygulamalarda veri aktarımları veritabanı-uygulama arasında yapılır.Biz şimdilik basit olması için girilen verileri, oluşturduğumuz değişkenlerde tutacağız.İşlemleri veritabanı ile yapsak dahi değişkenleri sıkça kullanacağız.
  2. Bu kod bloğunu kullanarak,
  3. Bu şekilde değişkenlerimizi oluşturuyoruz."name" kısmına değişkene vermek istediğimiz ismi yazıyoruz ve her biri için Text kısmından boş metin kutusu alıyoruz, çünkü oluşturduğumuz her değişkene ilk değerini atamalıyız.
  4. Butona tıklandığında,
  5. Eğer
  6. "chcKabul" adını verdiğimiz checkbox işaretliyse(checked)
  7. "txtKullaniciAdi" adını verdiğimiz metin kutusunun içine yazılan veriyi "Nickname" adını verdiğimiz değişkene, "txtSifre" deki veriyi de "Password" değişkenine ata.
  8. "BirthDate" değişkenine kullanıcının girdiği doğum tarihi verisini atıyoruz.
  9. Madde 7 den farklı olarak join(katıl/birleştir) işlemi kullanıyoruz. Text kısmından aldığımız join kod bloğu çentikleri arasındaki verileri birleştirir.Verileri birleştirmeye yukarıdan başlar.(join kod bloğu standart olarak 2 çentiklidir köşesindeki mavi çark simgesinden çentik sayısı artırılabilir.)


  1. Add Screen(Ekran Ekle)'ye tıklayıp uygulamamıza 2. ekranımızı ekliyoruz.
  2. Ekrana isim veriyoruz.
  3. İstediğimiz zaman buradan ekranlar arasında geçiş yapabiliriz.
Giriş ekranımızı ekledik fakat giriş ekranına ne zaman geçileceğini belirlemedik. Gerekli şartlar yerine getirilip kayıt işlemleri tamamlandığında diğer ekrana geçiş yapılması için aşağıdaki şekilde görebileceğiniz gibi Screen1 kod bloğunda değişiklik yapmamız gerekiyor.
  1. Variables(Değişkenler) kısmından "bilgiler" adını verdiğimiz yeni bir değişken oluşturuyoruz.
  2. Lists(Listeler) kısmından en üstteki kod bloğunu kullanarak yeni boş bir liste oluşturuyoruz.
  3. Lists kısmının 3. hazır kod bloğunu kullanarak, oluşturduğumuz listeye istediğimiz elemanları ekleyebiliriz.
  4. Hangi listeye eleman eklemek istiyorsak buraya yerleştiriyoruz.
  5. Listenin 1. index'ine(sırasına) "Nickname" değişkenini yani kullanıcı adını ekliyoruz.(Yazılım dillerinde index'ler genelde 0'dan başlar, ama app inventor için 1'den başlıyor)
  6. Listenin 2. index'ine şifre verisini ekliyoruz.
  7. Control kısmının 9. hazır kod bloğunu şekildeki gibi yerleştiriyoruz.Bu blok diğer ekranı açmamızı ve geçiş sırasında da veri aktarmamızı sağlıyor.
  8. Geçiş yapmak istediğimiz ekranın adını bir metin kutusunun içine yazarak şekildeki gibi yerleştiriyoruz.
  9. Diğer ekrana geçiş yaparken aktarılacak başlangıç değerini(startValue) buraya yerleştiriyoruz.(Bizim için bu başlangıç değeri "bilgiler" adlı listemiz)

Gerekli düzenlemeyi yaptıysanız giriş ekranımızı kodlamaya geçebiliriz.

Giriş Ekranına Eklediğimiz Bileşenler
*Giriş yapma mantığını düşünecek olursak kişi butona bastığında kullanıcı adı ve şifresi kayıt olurken belirledikleri ile aynıysa "lblSonuc" un text özelliğinde "Bilgiler Doğru Giriş Yapılıyor" yazsın.(Kendinizi geliştirdikçe daha farklı işlemler yaptırabilirsiniz, şimdilik örneği basit tutmak için
sadece ekrana yazı yazdırıyoruz)




Screen1'den aktardığımız bilgileri atamak(set etmek) için yeni değişkenler(variables) oluşturuyoruz
  1. Ekran bileşeninin 3. kod bloğunu kullanıyoruz.Anlamı: "ekran yüklendiğinde/çalışmaya başladığında" aşağıdaki kodları çalıştır.
  2. Yukarıda oluşturduğumuz listeye Screen1'den gönderdiğimiz liste verilerini aktarıyoruz.(get start value'yi Control bloklarında 10. sıradan alabilirsiniz)
  3. Lists kısmı index 9 den alınan bu hazır kod bloğu, bir liste içerisinden girilen index numarasında ki veriyi seçmemizi sağlıyor.
  4. Bu koyu mavi blokları Math kısmının en üstünden alıyoruz."gelenBilgiler" listesinin index 1 verisini(Screen1 den gönderdiğimiz kullanıcı adı), "gelenKullaniciAdi" ismini verdiğimiz değişkene atıyoruz.(Edit:"Sayı kutusunun içini değiştirmeyi unutmuşum siz 1 yapın")
  5. Benzer işlemi şifre verisi için de yapıyoruz. (Sayı kutusunun içi 2 olacak)

  1. MIT 'nin hazır kodlarından logic kısmını açıyoruz.
  2. Mantıksal operatörlerden ve operatörünü seçiyoruz.
  3. Şekilde gördüğümüz gibi yerleştiriyoruz.Hatırlayacak olursak if kod bloğu yanındaki şart doğruysa then kısmındaki kod bloklarını çalıştırıyordu.Tek başına if bloğunun yanına birden fazla kod bloğu yerleştiremiyoruz, giriş işlemini yapabilmek için birden fazla şartımız olduğundan(kullanıcı adı ve şifrenin doğru olması)  ve ikisininde aynı anda doğru olması zorunluluğundan dolayı and(ve) operatörü kullanıyoruz.Eğer şartlardan birisi sağlandığında diğerinin doğruluğu önemli olmadan işlem yapacak olsaydık or(veya/yada) operatörü kullanırdık.
  1. Logic kısmından 2 adet "=" operatörünü alıyoruz.Bu operatör sağ ve solundaki verilerin birbiri ile aynı olup olmadığını kontrol eder.
  2. Bizde kullanıcının uygulamamıza giriş yapmaya çalışırken yazdığı veriyi sola, kayıt olurken yazdığı(Screen1 den gönderdiğimiz) veriyi sağa ekliyoruz.
  3. Şimdi de bu iki şartı aynı anda sağlayıp sağlamadığını kontrol edebilmemiz için, bu kod bloklarını and operatörünün sağına ve soluna yerleştiriyoruz.
  4. Son olarak bütün şartlar sağlandığına göre artık "lblSonucYaz" adlı bileşenimizin text özelliğini"Bilgiler Doğru Giriş Yapılıyor" şeklinde set edebiliriz.
Kod Bloklarının Son Hali

İYİ ÇALIŞMALAR

6 Şubat 2019 Çarşamba

APP INVENTOR DERS-3

İLK PROGRAM(HELLO WORLD)

Bende bir klasik olan ilk programım "Hello World" ile başlamak istiyorum.
  1. Sürükle bırak yaparak User Interface(Kullanıcı Arayüzü)'den temsili telefon ekranına 1 adet button ve 1 adet label ekleyelim.
  2. Eklediğimiz bileşenlerin, ders 2 de gösterdiğim gibi Screen1'in alt kısmında da eklendiğini görebilirsiniz.Butonu ve label'ı yeniden isimlendirmeyi unutmayalım.Ben butonu "btnTikla", label'ı "lblEkranaYaz" olarak isimlediriyorum.NOT: Bileşen isimlendirmede Türkçe harfler kullanılmamaktadır.
  3. Screen1 seçiliyken özellikler(Properties) panelinden Title özelliğini değiştirerek uygulamanızda görünmesini istediğiniz başlığı yazabilirsiniz.Ben "Ekran1" yazacağım.
  4. Blocks butonuna tıklayıp buton ve label arasındaki bağlantıyı kurmak için ilk kod bloklarımızı oluşturabiliriz.


  1. Tasarım(Designer) kısmındaki bileşenlerin bulunduğu paletin kopyası.
  2. Blocks kısmına ilk geçtiğinizde bu kısım açık olmayacaktır, paletten herhangi bir bileşen seçtiğinizde o bileşenle yazılabilecek kod blokları bu şekilde açılacaktır.Yine sürükle bırak yaparak kullanıyoruz.Bu kısımda ki her rengin bir anlamı var, sarılar o bileşenle ilgili durumları/olayları(events), yeşiller özellikleri(properties)(Seçili bileşenin bir özelliğini değiştirmek/yazmak/set etmek istiyorsak koyu yeşilleri,varolan özelliğini kullanmak/okumak/get etmek istiyorsak açık yeşilleri seçicez), morlar davranışları(behaviors) simgeler.Bir buton için mor olmadığından burada göremiyoruz.
  3. Kullanmamız için MIT App Inventor tarafından oluşturulan hazır kod blokları.Kullandıkça tanıtacağım. 

Sırasıyla yukarıdan aşağıya doğru bir butonun olaylarını tanıtalım

  • Click: Butona tıklandığında,
  • GotFocus: Üzerine gelindiğinde(telefon ekranında butonun dışında bir yere tıklayıp elinizi butonun üzerine getirdiğinizde), butona focuslanıldığında,
  • LongClick: Uzun süre butona tıkladığımızda,
  • LostFocus: Elimiz butonun üzerindeyken tıklama işlemini gerçekleştirmeden elimizi ekranda başka bir yere kaydırdığımızda, buton focus kaybedince,
  • TouchDown: Butona dokunma işlemi başladığında,
  • TouchUp: Butonu serbest bıraktığımızda dokunma işlemi bittiğinde,(Aslında Click event'i TouchDown ve TouchUp event'lerinin birleşimi gibi gözükse de kod bloklarında aynı anda kullanıldığında TouchUp içerisindeki kodlar daha önce çalışır.)


  1. Buton bloklarından click olayını, label bloklarından set......Text özelliğini alıp şekildeki gibi birleştiriyoruz.
  2. MIT'nin bizim için oluşturduğu hazır kod bloklarından Text için olanları açıyoruz.
  3. Boş metin kutusunu alıyoruz ve şekilde gösterilen kısma sürükleyip birleştiriyoruz.


Böylece ilk programımızı bitirmiş bulunmaktayız.Şimdi sıra yaptığımız bu programı çalıştırmakta.Bu işlem için ya Android işletim sistemine sahip bir telefonunuz olması lazım yada bilgisayarınıza bir sanal cihaz(emulator) kurmanız gerekiyor.

Bilgisayara Sanal Cihaz Kurulumu

İnternette pek çok sanal cihaz bulabilirsiniz,ben çok fazla kullanıcısı olan "Bluestacks" i kullanıyorum. www.bluestacks.com/tr/index.html adresinden cihazınıza indirip kurulumu yaptıktan sonra devam edebiliriz.

  1. Build(Derle/İnşa et) butonuna basıyoruz.
  2. "App(save .apk to my computer)" yani uygulamanın .apk dosyasını bilgisayarıma kaydet seçeneğini seçiyoruz.(Diğer seçenek ben bu postu oluşturduğum zaman hata veriyordu, yine de öğrenmek isteyen varsa iletişim bilgilerinden ulaşabilirsiniz.) Seçtikten sonra ekrana bir progress bar(ilerleme çubuğu) çıkacaktır, tamamlanana kadar bekliyoruz.Programın büyüklüğüne ve bilgisayarınızın sistem özelliklerine göre süre değişecektir. apk dosyasını indirdikten sonra 
işlemlerini gerçekleştiriyoruz (Bütün çalışmalarınızı tutmak için bir klasör oluşturmanızı tavsiye ederim.) ve yükleme işlemi tamamlandığında uygulamamız çalıştırılmaya hazır bir şekilde sanal cihazımızın ekranında bekliyor olacak.

Kendi Cihazınızda Çalıştırma

Eğer yaptığınız uygulamayı kendi android cihazınızda çalıştırmak istiyorsanız, bilgisayara indirdiğimiz .apk dosyasını bir şekilde telefonunuza göndermeniz gerekiyor.(Whatsapp Masaüstü'nü kurup boş bir grup açarak bilgisayarınız ve telefonunuz arasında dosya alış-verişi yapabilirsiniz, mail, cloud, Google Drive vb şekillerde iletilebilir.) Bu işlemler sırasında telefonunuz "3. parti dış etmenlerden gelen işlemleri yapmaya kapalıdır" şeklinde bir uyarı verebilir, bu durumda çıkan uyarıyı takip ederek ayarlardan gerekli izini verdikten sonra uygulamanızı çalıştırabilirsiniz.

VE SONUÇ



5 Şubat 2019 Salı

KOLAY ANDROID UYGULAMA GELİŞTİRME

MIT APP INVENTOR

NEDİR?

İlk olarak Google tarafından geliştirilen, sonrasında MIT(Massachusetts Institute of Technology)'nin geliştirmeye devam ettiği bir web uygulamasıdır.Başlangıçta amacı çocuklara android programlamayı öğretmek, daha zevkli ve görsel hale getirmek olsa da sağladığı kolaylıklardan dolayı kullanıcı kitlesi sadece çocuklar olmaktan çıktı ve Google Play Store'da MIT App Inventor ile geliştirilmiş çok fazla sayıda uygulama yerini aldı. 

*Uygulama geliştirmeye başlamak için appinventor.mit.edu/explore/ sayfasında sağ üstte bulunan Create apps! butonuna tıklayıp Google hesabınızla giriş yapmalısınız.
Kısaca, giriş yaptıktan sonra karşımıza çıkan sayfayı tanıtarak başlamak istiyorum.
  1. My Projects: Var olan bütün projelerimize giden kısayol.
  2. Gallery: Diğer App Inventor kullanıcılarının kendi geliştirdikleri uygulamaları gönüllü olarak paylaştıkları galeri. İhtiyacınıza uygun olanları veya geliştirmek istediğiniz bir uygulamanın benzerlerinin olup olmadığını ücretsiz ve hızlı bir şekilde inceleyebileceğiniz bir galeri.
  3. Guide: MIT'nin App Inventor için hazırladığı bütün dokümantasyonlara ulaşabileceğiniz bir kısayol.
  4. Report an Issue: Uygulamada bir hata ile karşılaştığınızda bu kısayolu kullanarak MIT'ye bu hatayı raporlayabilirsiniz.
  5. Bu menüler diğer derslerde kullanıldıkça anlatılacak
  6. Start a New Project ile yeni bir proje oluşturup başlayabiliriz.

İYİ ÇALIŞMALAR

Son Eklenen

C# Ders-5

Döngüler(Loops) Döngüler, bir işlemin defalarca tekrarlanması gerekiyorsa, aynı kodu tekrar tekrar yazmaktan kurtulmamızı sağlar. Gerçekl...

Popüler Yayınlar