İşte yapmak istediğim şeyin bir resim:Birden çok görüntü katmanlama efekti dinamik olarak nasıl elde edebilirim?
tüm resimler farklıdır ve ben 2-10 arasında olabilir.
Şimdi sahip kodudur:
:RelativeLayout imgLayout = (RelativeLayout) findViewById(R.id.RelativeLayoutPictures);
for (int i = 0; i < flag; i++)
{
ImageView iv = new ImageView(this);
iv.setImageURI(picUris[i]);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
lp.setMargins(50*i, 50*i, 0, 0);
lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
imgLayout.addView(iv, lp);
}
ve sonuç (Picuris [] benim Uri en dizisidir) (bayrak resimlerin # olan)
Sorunlar yeniden boyutlandırılıyor ve İstediğim gibi ekran tarafından kesilmiyor ve altta garip bir şeyler oluyor.
hiçbir şey değişmedi:/ –
Yaptığım şey buydu: lp.setMargins (50 * i, 50 * i, 0, 0); Burada 0 <= i <5, ve yukarıdaki resimde gördüğünüz gibi, 0,50,100,150,200 kenar boşluklarında 5 fotoğraf var. Sorun şu ki, sağ ve alt kenarlara sığacak şekilde yeniden boyutlandırılıyorlar ve ihtiyaç duydukları gibi gitmiyorlar. Üzgünüz, fotoğrafta net olmasaydı, etrafta bir kenarlık gibi bir şey eklemeyi denemedim ve fotoğrafların arkasındaki gölgeyi –
sanırım Yeniden boyutlandırmayı yapıyor 'RelativeLayout'. “RelativeLayout”, “düşünüyor” ın doğru olduğunu düşündüğü bir şeyleri ortaya çıkarmak için çocuğunun 'View's'ını manipüle ediyor. Bunun yerine bir "FrameLayout" kullanmayı deneyebilirsiniz. –