Profile

Cover photo
Teeranai P
Worked at Minibug Studio
Attended Chiang Mai University
Lives in Bangkok
8 followers|226,273 views
AboutPostsPhotosYouTube

Stream

Teeranai P

Shared publicly  - 
 
น้องในทีมจัดให้อ่านในวันหยุด #Android
 ·  Translate
1
Add a comment...

Teeranai P

Shared publicly  - 
 
 
I have been looking at layout performance of Facebooks Yoga layout (https://facebook.github.io/yoga/) and Androids RelativeLayout in Android apps. While the Yoga layout is not fully featured yet (eg. it misses support for baseline alignment) it has one thing going for it: speed.

The attached screenshot shows the same layout using nested Yoga layouts and nested RelativeLayouts. While the RelativeLayout is know to be notoriously slow when nesting deep it was still an interesting observation:

When nesting the RelativeLayout 16 layouts deep, starting the app took 22 sec (Nexus 6p). Layouting 16 levels deep with Yoga took only 2,7 sec. That is nearly 10 times better performance.

So where is the limit for the yoga layout? In fact there is no limit. The only limit is a crash in the jni layer when going very deep. Until that point the performance does not deteriorate noticable from nesting deeper.

So how far can you take it? The maximum number of nested layouts was 500 ViewGroups. The startup time of the app remains at ~2.7 sec. Pretty impressive.

So comparing layout performance between Androids RelativeLayout and the Yoga layout in the shown scenario is clearly in favor of the Yoga layout. It would be interesting to pit the Yoga Layout against the ConstraintLayout.

cc +Lucas Rocha
14 comments on original post
1
Add a comment...

Teeranai P

Shared publicly  - 
 
เหยยยย!! ViewStub หวะแกรรรรร
 ·  Translate
ViewStub คือ View มีการใช้งาน Memory น้อยมากและสามารถ Inflate View อื่นๆ เข้ามาแทนที่ตัวมันเอง
1
Add a comment...

Teeranai P

Shared publicly  - 
 
Hello Deep Link and App Indexing Api
 ·  Translate
แชร์เทคนิคการทดสอบ Deep link และ App indexing ด้วย Android Debug Bridge (ADB)
1
Add a comment...

Teeranai P

Shared publicly  - 
1
Add a comment...

Teeranai P

Shared publicly  - 
 
ใช้ RxJava โหลดข้อมูลจาก Cache(Realm) และ API กันจ้าาาาา
 ·  Translate
แสดงข้อมูลจาก Cache และ API ด้วย RxJava เหมือนกับ Facebook App ที่ไม่ได้เชื่อมต่อ Internet หรือ Network มีปัญหาแต่ก็ยังสามารถเห็นข้อมูลบางส่วนใน App ได้
1
Add a comment...

Teeranai P

Shared publicly  - 
 
Awesome Timber Log Library
 ·  Translate
Timber Log : Library ที่จะสามารถทำให้การ Log ของคุณเป็นเรื่องง่าย ด้วยการ Config ที่เดียวจบ จัดข้อความด้วย String Formatter และยังใช้งานร่วมกับ Crashlytics ได้อีกด้วย
1
Add a comment...

Teeranai P

Shared publicly  - 
 
Hide and Show Floating Action Buttons on Scrolling
 ·  Translate
1
Add a comment...

Teeranai P

Shared publicly  - 
 
Amazing Grid
1
Add a comment...

Teeranai P

Shared publicly  - 
 
Batman v Superman: Dawn of Justice
https://www.youtube.com/watch?v=fis-9Zqu2Ro
1
Add a comment...
Work
Employment
  • Minibug Studio
    Android Developer
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Bangkok
Links
YouTube
Education
  • Chiang Mai University
    2011
Basic Information
Gender
Male