• 29-05-2020, 13:53:06
    #1
    Android Studiodan çıktısını aldığım uygulamamda, telefon boyutlarına göre çeşitli sorunlar bulunuyor. Küçük ekranlı telefonlarda (veya düşük çözünürlüklü) simgeler çok büyük kalıp ekrandan taşıyor, büyük cihazlarda ise simgeler ekran büyüdüğü için küçük kalıyordu.
    Not : Simgelerin tamamı png formatında.

    Biraz araştırmadan sonra photoshoptan aldığım çıktıları ldpi, mdpi, hdpi, xhdpi, xxhdpi ve xxxhdpi olarak çıktı aldım ve bunları uygulamanın klasöründe olması gerektiği şekilde res'in içine klasör isimleriyle birlikte koydum. Daha sonra android studioda layout bölümünden her bir xml dosyam için tek tek (ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi ) için layoutlar oluşturdum. Her bir layoutu açıp, android studioda tasarım kısmından bu çözünürlüğe sahip telefonu seçip sonuca baktım ve küçük cihazlardaki taşma sorununu gözlemledim. Her bir layoutu o ekrana göre düzenledim gerekli büyütme ve küçültme işlemlerini yaptım. Şuan her bir dosya simulasyonda olması gerektiği gibi, ekran dışına taşma vs olmadan çalışmakta.

    Sorun : Yukarıda anlattığım işlemleri yapmama rağmen apk çıktısı alıp küçük bir cihazda çalıştırdığım zaman ekrandan taşma probleminin devam ettiğini gördüm. Bunu nasıl çözebilirim yardımcı olabilir misiniz?

    Dipnot : Layout dosyalarını oluştururken şu videodaki gibi yaptım : 2.55-3.25 arasına bakmanız yeterli. Orda göstermekte.
    https://www.youtube.com/watch?v=Ia3fxyYTMjg

    Dipnot 2 : Yeni layout dosyaları oluşturdum, fakat o ilk halini silmedim. Örneğin main.xml vardı. Bunu her çözünürlük için çoğalttım ama main.xml ana dosyası da hala duruyor. Acaba telefonlar direk bunu mu alıyor hala farklı çözünürlükteki layoutları almak yerine?

    Herkese iyi forumlar dilerim.
  • 29-05-2020, 14:28:02
    #2
    layoutları ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi olarak değil small large xlarge normal olarak ayarlaman lazım. Resimler için ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi doğru. Araştır biraz görürsün muhtemelen intte örneklerini.
  • 29-05-2020, 14:35:44
    #3
    murataksu_ adlı üyeden alıntı: mesajı görüntüle
    layoutları ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi olarak değil small large xlarge normal olarak ayarlaman lazım. Resimler için ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi doğru. Araştır biraz görürsün muhtemelen intte örneklerini.

    Teşekkürler hocam araştıralım bir bunu .
  • 31-05-2020, 16:38:27
    #4
    Sorunum halen devam etmekte yardımcı olacak olan var mı
  • 31-05-2020, 16:56:40
    #5
    4 yıldır android ile uğraşıyorum daha layoutları, ldpi, mdpi, hdpi, xhdpi, xxhdpi ve xxxhdpi diye ayrı ayrı tasarlanmış tek bir uygulama görmedim. Layoutu değil kullandığınız görselleri boyutlarına göre ayrı ayrı klasörleyeceksiniz. Genellikle menülerde kullanılan ikonlar ayrı ayrı boyutlanır. Onun dışında diğer görsellerde pek kullanılmaz çünkü bildiğiniz amele işidir, kimse görselleri tek tek alıp da boyutlandırmaz. Sanırım buton tasarımlarınız png formatında, ya onları her ekran için ayrı ayrı ölçeklendirecekseniz ya da butonlarda png kullanmayacaksınız.
  • 03-06-2020, 11:22:10
    #6
    Sorununuz hala devam ederse cihazın width boyutunu alıp küçük bir oranlamayla imageview'a maxWidth verebilirsiniz.
  • 03-06-2020, 12:05:43
    #7
    Aslında bunun en güzel çözümü Constrainlayoutu iyi kullanmak. İlk başlarda zor gibi gelmişi bana ama alıştıktan sonra çok rahatlıyor. Lineyerlayout'ta var weight özelliği fakat çok verimli değil. Widgetlere deger vermek yerine ekranda paylaştırılınca, hangi ekran olursa olsun tam sığıyor. Böylelikle eskiden yapılan farklı telefon modeline farklı layout ekleme amaeleliğide son buluyor. Bunu yapmak için tasarımı komple değiştirmek gerek tabi.