2016-04-05 25 views
1

Bazı Görüntü Görünümlerine sahip bir ScrollView var. Ancak, kaydırma çok yavaş ve kötü performansın sebebinin ne olduğunu anlamıyorum. Kaydırmayı hızlandırmak için yapılacak bir şey var mı? veya bu soruna neden olabilir?Android ScrollView ile Yavaş Kaydırma

`

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent"> 

       <ImageView /> 

     <ImageView /> 

     <ImageView /> 

     <ImageView /> 

     <ImageView /> 

       <ImageView /> 

      </RelativeLayout> 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_alignParentBottom="true" 
       android:gravity="center" 
       android:orientation="vertical"> 

       <Button /> 

      </LinearLayout> 
     </RelativeLayout> 
    </ScrollView> 
</RelativeLayout>` 
+0

Gereksiz yere yuvalanmış 'RelativeLayout' yanı sıra bir soruna neden olacak bir şey yok gibi görünüyor. "Yavaş" demek, kelimenin tam anlamıyla yavaşça ilerlediğini mi kastediyorsunuz yoksa kaçak ve belki de kaydırma yaparken görüntü oluşturma ile ilgili problemleri mi kastediyorsunuz? Yüklediğiniz resimler ne kadar büyük? Büyük resimler yüklüyorsanız, dosya boyutlarını küçültmeyi deneyebilir misiniz? – Charlemagne

cevap

0

Ben ingilizce çok akıcı değilim ama size açıklamak için çalışacağız!

sadece seni değiştirmeye çalışmak zorunda

çocuk olan diğer çocuk görünümleri sistemde daha vergi var görmektedir bu

**<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"> 

      <ImageView /> 

    <ImageView /> 

    <ImageView /> 

    <ImageView /> 

    <ImageView /> 

      <ImageView /> 

     </RelativeLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:gravity="center" 
      android:orientation="vertical"> 

      <Button /> 

     </LinearLayout> 
    </RelativeLayout> 
</ScrollView> 

+0

Teşekkürler, deneyeceğim. – Vera

+0

Maalesef yardım etmedi. – Vera

0

gibi pozisyon, neden olur alamadım scrollview Bir üst RelativeLayout içinde bir RelativeLayout kullanın. Sadece bir snipet yayınladın ama çok fazla çocuk düzenine sahip olduğunu görüyorum.

bulabilir daha here

böyle bakmak veya RelativeLayout ile LinearLayout değiştirmelisiniz.

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="100dp" /> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="100dp" /> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="100dp" /> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="100dp" /> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="100dp" /> 
</LinearLayout> 

+0

Tüm RelativeLayouts'ları kaldırsam ve yalnızca ScrollView'ım ve RelativeLayout'ım varsa bile çok yavaştır. – Vera

+0

neden bunlardan boşsunuz 'ImageView' etiketleri – Mihai

+0

Sadece örnek için ImageView içindeki kodu kaldırdım. – Vera

1

sorun görüntülerin büyüklüğündeydi. ScrollView ve birden fazla ImageView ile bazı performans sorunlarınız varsa, resimlerinizin boyutuna dikkat edin! Benim durumumda onları yaklaşık olarak düşürdüm. Her resim için 20 KB - 50 KB.

İlgili konular