Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Image Kullanımı
#11
(08-09-2016, Saat: 21:27)pro_imaj Adlı Kullanıcıdan Alıntı: Fesih hocam sanırım yanlış anlaşılma oldu.

Windows tarafında zaten bende böyle yapıyorum, fakat Mobil tarafında bu sonuca ulaşamıyorum.

Eklediğim resim 512X512 Tasarım anında sorunsuz gözüküyorken apk halinde resim büyük olduğunda üst kısmı çıkmıyor.

Bununla birlikte Örneğin;

Bir Butonu Align := Center yaptığımda başka bir butonunda Align := Center yaptığımda ikisi üst üste geliyor. Halbuki  aynı butonların Align := Top  özellikleri aynı yaptığımda üstte alt alta sıralanıyorlar.

*Mobilde ekran dizayn etmek bambaşka bir şeymiş :s

Merhaba,
Aslında Mobil ekranda ekran tasarımı çok da zor değil. Yalnızca nesne hizalama (Align), yerleştirme (Positon), sabitleme (Anchors), ve birbirlerine göre pozisyonlarının (margins, padding) çok iyi bilinmesi gerekiyor.
Burada sizin sormuş olduğunuz konuya bir nebze çözüm olması açısından durumu örneklendirmek istiyorum.
Bu örnekte ekrana yerleştirdiğimiz bir resmin, bulunduğu taşıyıcı nesne (container) üzerine sığdırılması durumlarına(wrap mode) göz atacağız.
Yeni bir uygulama başlatalım ve form üzerine birer adet FramedScrollBoxImage, Toolbar, ComboBox ve Label yerleştirelim. 

Nesnelerin Structure penceresindeki birbirlerine göre yerleşimlerini aşağıdaki resimdeki gibi ayarlayın.

2f03b74.jpg
FramedScrollBox'ın Align özelliğini Client yapalım.
Image nesnesinin Align özelliğini Contents yapalım ve MultiResBitmap özelliğine bir resim ekleyelim.
Label'in AutoSize özelliğini True yapalım.
Nesne yerleşimlerinin ekran tasaram anındaki görüntüsü aşağıdaki gibi olacaktır.

18f4es.jpg
Şimdi de Image nesnesinin WrapMode enum tiplerinin tümünü dinamik olarak alıp, ComboBox'ta listeleyerek, çalışma anında tüm ekrana sığdırma yöntemlerini test etmiş olalım.
Enum tiplerin isimlerini String olarak almak veya değerlerini alarak Set etmek için TRttiEnumerationType sınıfını kullanacağız. Bunun için Uses bölümüne RTTI referansını ekleyelim.

uses
 RTTI;

Uygulama ilk açıldığı anda tüm WrapMode tiplerin ComboBox'ta listelenmesi için Formun OnCreate olayına aşağıdaki kodları yazalım.

procedure TForm1.FormCreate(Sender: TObject);
var
 typSığdırma: TImageWrapMode;
begin
 for typSığdırma := Low(TImageWrapMode) to High(TImageWrapMode) do
   cmbSigdirma.Items.Add(TRttiEnumerationType.GetName<TImageWrapMode>(typSığdırma));
 cmbSigdirma.ItemIndex := 1; { Varsayılan olarak Fit seçili olsun }
end;

Son olarak, uygulama çalışma anında, resmin bulunduğu nesne üzerine sığdırılmasını test etmek için kullanıcının seçmiş olduğu WrapMode özelliğini Set edelim. Bunun için de ComboBox'ın OnChange olayına aşağıdaki kodu yazalım ve uygulamayı çalıştırarak test edelim.

procedure TForm1.cmbSigdirmaChange(Sender: TObject);
begin
 Image1.WrapMode := TRttiEnumerationType.GetValue<TImageWrapMode>(cmbSigdirma.Items[cmbSigdirma.ItemIndex]);
end;

Asus Zenfone Telefon ekran görüntüsü

ezj3x41.gif
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#12
Fesih Bey;
Çok güzel hazırlanmış bir örnek olmuş teşekkür ederim.
Cevapla
#13
(09-09-2016, Saat: 13:48)pro_imaj Adlı Kullanıcıdan Alıntı: Fesih Bey;
Çok güzel hazırlanmış bir örnek olmuş teşekkür ederim.

Rica ederim soru da kaliteliydi. 
Cross-Platform ve Mobil uygulamaların hız kazanması ile birlikte, kullanıcı ara yüzlerinin tasarımı son derece önem kazandı. Bu anlamda Delphi ile geliştirilen uygulamalarda nesne özellikleri doğru kullanıldığında (yukarıda belirtmiş olduğum özellikler) emin olun hiç bir sorun yaşamazsınız.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  ClientDataSet image field yükleme (DataSnap) 41linea41 6 1.781 23-10-2020, Saat: 14:22
Son Yorum: Jakarta2
  OrangeUI Grid kullanımı hk. pro_imaj 13 3.228 15-09-2020, Saat: 10:15
Son Yorum: Bay_Y
  Image Height ve Width boyutu- çözüldü Nese 2 516 13-07-2020, Saat: 00:44
Son Yorum: Nese
  Image taşıma Haydar 1 425 17-06-2020, Saat: 21:26
Son Yorum: mrmarman
  fmx gönder veya enter tuşu kullanımı seydigozegir@gmail.com 5 1.364 24-04-2020, Saat: 11:53
Son Yorum: cihankoca



Konuyu Okuyanlar: 1 Ziyaretçi