Merhaba arkadaşlar. Bu derste, uygulamamıza resim ve ses eklemeyi anlatacağım. İlk olarak uygulamamıza nasıl resim ekleriz ondan bahsedelim.
Önceki derslerden öğrendiğimiz gibi ilk olarak projemize ikinci bir sayfa ekleyelim. Bu sayfaya resim ekleyeceğiz. Ana sayfamızdaki butona tıkladığımızda ise diğer sayfaya gidecek ve diğer sayfada da bu eklediğimiz resmi göreceğiz. Bu sayfa ekleme işlemlerini yaptıktan sonra projemizin son görüntüsü şu şekilde olacaktır.
Uygulamamıza bu iki ekranı da ekleyelim. Daha sonra butona tıklandığında resimliveseslisayfa adındaki sayfaya gitmesini sağlayacak olan kodu yazalım. Ana sayfamızın kod kısmı şu şekilde olacaktır.
MainActivity.java dosyamıza bu kodları yazalım. Ana sayfamızdaki butona tıklandığında diğer sayfaya geçiş yapacak. Sayfa eklemeyi bir önceki konuda anlattığım için üzerinde durmuyorum. Şimdi eklediğimiz sayfayı açalım ve bu sayfanın arka planına bir resim ekleyelim. Bunun için ilk olarak şunu yapmamız gerekiyor.
Projemizin kaydedildiği dizine gidelim. Bende projeler, Workspace3 klasörüne kaydediliyor. Sizde hangi klasörde kaydediliyorsa ona girin ve daha sonra proje dosyanızı açın. Buradaki drawable-hdpi klasörüne resminizi atın.
Ben bir resim oluşturdum ismini arkaplan2 koydum. Şimdi projemize dönelim ve yukarıdaki menüden Project ve daha sonra Clean diyelim. Bunu yaptıktan sonra oluşturduğumuz sayfanın xml dosyasına çift tıklayalım ve boş sayfamızı görelim. Sağdaki properties kısmından Background seçeneğine tıklayalım ve arkaplanımız için bir resim seçelim. Tabiki bu resmi, eklediğimiz resim arasından seçeceğiz. Eğer @drawable-convert gibi bir hata alıyorsanız Eclipse programınızı kapatın ve tekrar açın. Bunu yaptıktan sonra resmi hatasız ekleyebileceksiniz.
Bu şekilde arkaplanımızı, klasörümüzün içerisinden seçiyoruz. Ekleme işlemini yaptıktan sonra 2.sayfamızın arkaplanı şu şekilde olacaktır.
Şimdi programımızı çalıştıralım ve butona tıkladığımızda diğer sayfaya geçtiğini görelim.
Ses Dosyası Ekleme
Uygulamamıza resim dosyası ekledikten sonra bir de ses dosyası ekleyelim. Projemizin olduğu dizine gelelim ve sesler adında bir klasör ekleyelim. Daha sonra ses dosyamızı bu klasörün içerisine atalım. Projemizde ise Project-Clean diyerek bu klasör ve sesin tanımasını sağlayalım.
Daha sonra projemize dönelim ve MainActivity.java dosyamıza çift tıklayalım ve onCreate() metodunun içerisine şu kodları yazalım.
1 |
MediaPlayer cal=MediaPlayer.create(MainActivity.this,R.sesler.sesdosyasi); |
Burada cal adında nesne oluşturuyoruz. Metoda ilk parametre olarak bulunduğumuz sayfayı, diğer parametreyi de dosyamızın bulunduğu klasör adını ve ses dosyamızın ismini yazıyoruz. Biz res klasörünün altında sesler adında bir klasör daha oluşturmuştuk ve adı sesdosyasi olan sesimizi de bu klasöre atmıştık. Bu kodu yazdıktan sonra sesimizin nerede ve nasıl çalmasını istiyorsak oraya şu kodu yazmalıyız
1 |
cal.start(); |
Diyelim ki butona tıklandığında çalmasını istiyoruz o zaman butonun onClick() olayının içine yazmamız gerekiyor.
Hocam ses dosyasını bir türlü tanıtamadım. sleepaway.mp3 isimli bir dosyası res dizinine attım. project clean yaptım ama package explorerda res ve sesler altına çarpı attı. yani res altına bir klasör açınca hata alıyorum.
Derleme sırasında da şu hataları veriyor:
invalid resource directory name sesler /SesVeResim/res
Project 'SesVeResim' is missing required source folder: 'res/sesler'
The project cannot be built until build path errors are resolved
Klasör ekleme işlemini proje üzerinden değil de workspace içerisinden res klasörnün içerisine ekleyerek yapın.Projeleriniz hangi klasörde saklanıyorsa oradan yapın.Burdan da sonuç alamazsınız tekrar dönüş yapın.
Farkeden bişey olmadı.
…workspaceSesVeResimressesler klasörünü oluşturup project clean yapınca package explorerda res altında sesler klasörü geliyor ama üzerinde çarpı var. Projeyi silip baştan yaptım, sonuç yine aynı. Size email atıyorum projeyi.
Mailinizde dediğiniz gibi sorun compiler olarak android 4.2 kullanmammış. Yalnız biraz araştırdım, ses dosyasını res/raw klasörüne atıp, kodu bu klasöre göre değiştirince hata vermedi.
hocam ses dosyasını tanıtabilmek için res altında raw adlı bir klasör oluşturup ses dosyasını onun içine atmak gerekiyor. aksi taktirde eclipse belirttiğiniz klasörü bulamıyor. bir yerde böyle çözmüşler durumu paylaşayım dedim.
Resmin üzerine link vermenin nasıl oldugunu anlatabilir misiniz
Imageview dersinde anlatmış olmam gerekiyor onu. Anlatmamışsam da orada imageview kullanarak istediğiniz işlemi yapabilirsiniz.
Hocam iyi günler. İki sayafa Oluşturdum ve sayfaları birbirine bağladım ve diğer sayfaya geçerken butona basıldığında ses ekledim ve diğer sayfaya giderken ses çalınıyor buraya kadar tamam. İkinci sayfaya sekiz tane ses butonu ekledim ama sadece altı tanesini çalabiliyor diğer iki ses butonu hata veriyor. Her hangi iki tane ses butonunu sildiğimde o hata veren butonlar çalışıyor. bu neyden kaynaklanıyor olabilir sizce
Merhaba. Seslerin isimlerinde bir hata olabilir. Aynı isimde ya da büyük harfte olanlar varsa, yanlış bağlanmışlarsa hata almış olabilirsiniz.
Hocam merhabalar . Ben android ortamında ses komutu ile resim açmak istiyorum . Şöyle ki resim doayasının ismi ‘resimac.png’ olsun . Butona tıklayıp resimac dediğimde seçmiş olduğum resmi açmak istiyorum . Kod konusunda yardımcı olabilir misiniz ? şimdiden teşekkürler iyi çalışmalar …
Merhaba. Android voice recognition diye aratırsanız bulabilirsiniz. Dediğiniz şey mümkün.
Merhaba Hocam, Android projeme Resim ,veya ses Dosyası ekliyorum ve bunu projemın tanıması için projeyi clean yapınca proajemdeki gen klasörunun altındaki R.java dosyası siliniyor bu yuzden R. diyerek ulastıgım yerlerde hata alıyorum bunun çözümü varmı acaba
Eclipse içinden değil de projenizin klasörünün olduğu yerden ekleme yapın. Eclipse’ye gelip refresh edin. Düzelmezse, resim adının tamamını küfük harflerle yapmamış olabilirsiniz bir de öyle deneyin. R.java’da hata vermemesi gerek normalde
Merhabalar hocam. Ses doyası eklerken, cal nesnemiz için uyarı veriyor. Ne yapmam gerekir?
Uyarının üzerine tutun . Ne yazıyor ?
Allah c.c razi olsun.. Mehmet bey safya içerisine htm bir sayfayi import etmek nasıl oluyor? Mesela ilmihal gibi bir program yapmayı düşünürsek anasayfamızda çoklu bir lik var her ayrı linke tıklandıgında ayrı bir sayfada htm sayfası içerisindeki görüntü açılacak bu konunun dersinide çekerseniz çok iyi olur.
Merhaba. Webview ile halledilebilir.
Merhaba. Ben dedikleriniz yaptım. Herşey çalışıyo ama müzik yani ses belli bir süre kadar çalıyor. Koyduğum ses ise 2 dakika kadar. Onu nasıl tamamını çaldırabilirim veya tekrarlatabilirim. Teşekkürler.
Hocam çok detaylı bir açıklama olmuş, uzun zamandır araştırmasını yaptığım bu konu ile artık tarafınızdan bilgi sahibi oldum diyebilirim. Konu hakkında verdiğiniz değerli paylaşımınız benim gibi diğer ihtiyaç sahiplerinin de işine çok yarayacaktır umuyorum, teşekkürler..
Merhabalar projemize youtube İnstagram daki gibi story ekleme Bölümü nasıl yapmam gerekiyor bununla ilgili internette birşey bulamıyorum
Merhaba. Bu detaylı bir konu, bana özel bir mail atarsanız yardımcı olmaya çalışırım. İyi günler.