Our SuccessKnowledges
NEXTZY Logo
Crews
Chat
Talk with Team
NEXTZY Logo
NEXTZY
Chat
Home>Knowledges

[Tip/Trick] ToolNs ใน Android xml ใช้เถอะอยากบอกต่อ

บางครั้งเราแค่จำเป็นต้องการแค่ preview บางอย่างบน layout เพื่อดูภาพรวมบน layout ก่อนที่จะ compile แอพเรา ดังนั้นมันไม่ดีแน่ถ้ามีบางส่วนที่เราใช้ "แค่ preview" เผลอหลุดไปบน production

Share:

[Tip/Trick] ToolNs ใน Android xml ใช้เถอะอยากบอกต่อ

Table of contents

  • ทำไมถึงต้องใช้
  • layout param “android: …” สามารถใช้ใน “tools: …” ได้ทั้งหมด
  • toolNs ยังมีตัวช่วยอย่างอื่นอีกด้วยนะ
  • tools:context = “…”
  • tools:layout = “@layout/…”
  • tools:listitem
  • Summary
  • Debugging blog series
Nonthawit

Nonthawit

CEO | Engineer | Designer

VIEW

2,101

CATEGORY

Tutorials & Tools,Technical

LAST UPDATED

November 9, 2016

Nonthawit

Nonthawit

CEO | Engineer | Designer

VIEW

2,101

CATEGORY

Tutorials & Tools,Technical

LAST UPDATED

November 9, 2016

ทำไมถึงต้องใช้

บางครั้งเราแค่จำเป็นต้องการแค่ preview บางอย่างบน layout เพื่อดูภาพรวมบน layout ก่อนที่จะ compile แอพเรา ดังนั้นมันไม่ดีแน่ถ้ามีบางส่วนที่เราใช้ “แค่ preview” เผลอหลุดไปบน production

toolNs จึงเป็น 1 namespace บน xml ที่มาตอบโจทย์ปัญหานี้

เพราะ toolNs แสดงแค่บน preview editor ใน android studio เท่านั้นคือ ไม่กระทบกับ production จริงแน่นอนสบายใจหายห่วง 😇

วิธีใช้งานให้ต้องประกาศ XML namespace xmlns:tools=”http://schemas.android.com/tools" เสียก่อนไว้ที่ root layout เพื่อให้ใช้ layout param “tools” ได้

shortcut -> toolNs + enter

มาเร่ิมดูกันดีกว่าว่าทำไมอยากให้ใช้กัน :)

layout param “android: …” สามารถใช้ใน “tools: …” ได้ทั้งหมด

เช่น

android:text="The Khaeng" <--> tools:text="The Khaeng"

android:visibility="visible" <--> tools:visibility="visible"

และอีกมากมาย

ดูผิวเผลินทั้งสองภาพแสดงใน tab preview เหมือนกันกันแต่จริงๆแล้ว

ถ้าเราลองกด run จะเห็นว่าตัวที่ใช้ tools:text=“The Khaeng” จะไม่มีข้อความ “The Khaeng” อยู่ เพราะอย่างที่เราบอกไว้ตอนต้น tools จะไม่กระทบกับ production

toolNs ยังมีตัวช่วยอย่างอื่นอีกด้วยนะ

  • tools:context
  • tools:listitem
  • tools:layout

tools:context = “…”

ใส่เพื่อให้ link xml ไปที่ class ที่ inflate layout ตัวนี้ สะดวกดีไม่ต้องไปกดไล่หาเอง

Note: ใส่ทุกครั้งที่สร้าง layout file นะครัช

tools:layout = “@layout/…”

ใส่เพื่อให้ preview layout ที่เราต้องการแปะใน xml tag <fragment>

เราสามารถเห็น preview ได้เลยโดยไม่ต้อง กด run

tools:listitem

ใช้กับ ListView หรือ RecyclerView ได้ด้วยนะ

preview listitem ที่เราสร้างไว้ก็สามารถทำได้เช่นกัน แต่ได้ทีละชนิดนะ

Summary

“เราใช้ tools เพื่อต้องการแค่ preview” โดยที่เราไม่อยากให้กระทบกับ production เพราะถ้าเรา android:text="The Khaeng" ใช้ตรงๆเลยเพื่อ preview บางครั้งเราอาจลืมกลับมาแก้ได้ ซึ่งไม่ใช้เรื่องตลกเลยถ้า app เรามีชื่อ “The Khaeng” บน play store


มีอีกบางตัวที่ไม่ได้บอก แต่ไม่ค่อยได้ใช้อ่านเพิ่มได้ตาม link นี้โลดดด

Tools Attributes - Android Studio Project Site
Android tools project information sitetools.android.com

อ่อแล้วก็ใน web เข้าบอกไว้ว่า

แต่ก็ยังไม่เห็นเปลี่ยน แต่บอกเผื่อไว้ก่อน เนาะ 55555

วันนี้พอแค่นี้ก่อนเจอกัน blog หน้า คิคิ

Debugging blog series

  1. [Tip/Trick] ToolNs ใน Android xml ใช้เถอะอยากบอกต่อ

2. [Tip/Trick] Android debugging หลาย feature ที่หลายคนยังไม่รู้

[Tip/Trick] Android debugging หลาย feature ที่หลายคนยังไม่รู้
การกด debugging icon รันแอปใหม่รอเป็นนาทีเพื่อ print log แค่บรรทัดเดียว หรือ ค่อยๆ print log ไล่ debug แต่ต้องรันแอปทุ…blog.nextzy.me

3. สุดยอด Stetho Debugging tools

สุดยอด Stetho Debugging tools
บนโลกการทำงานจริงๆ time to market เป็นเรื่องสำคัญมาก ซึ่งถ้าสังเกตกันจริงๆนะเราเสียเวลาไปกับการ debug code อยู่เยอะพอส…blog.nextzy.me

4. coming soon…

Share:

KNOWLEDGE

Related Articles

เข้าใจการทำ Selector แบบ Ripple effect
Nonthawit

Nonthawit

CEO | Engineer | Designer

เข้าใจการทำ Selector แบบ Ripple effect

20 สิ่ง ที่ได้หลังจากเป็น Android developer ที่ Nextzy 3 เดือน
Nonthawit

Nonthawit

CEO | Engineer | Designer

20 สิ่ง ที่ได้หลังจากเป็น Android developer ที่ Nextzy 3 เดือน

บทความนี้แชร์ประสบการณ์ 3 เดือนแรกของการทำงานเป็น Android Developer ที่ Nextzy ครอบคลุมทั้งด้าน technical เช่น MVP architecture, Android Lifecycle, ProGuard, Git workflow และการเขียน Unit Test รวมถึงด้าน soft skill อย่างการสื่อสารกับทีม, การแชร์ความรู้, และการเขียนโค้ดให้ readable และยืดหยุ่น นอกจากนี้ยังสะท้อนวัฒนธรรมองค์กรที่เน้นทีมเวิร์ค การ review โค้ด และบรรยากาศการทำงานที่สนุกสนาน ซึ่งล้วนช่วยลด learning curve และพัฒนาทักษะได้เร็วกว่าการเรียนรู้คนเดียว

[Tip/Trick] วิธีติดต่อกับ WebView ผ่าน JavascriptInterface มันเท่มาก
Nonthawit

Nonthawit

CEO | Engineer | Designer

[Tip/Trick] วิธีติดต่อกับ WebView ผ่าน JavascriptInterface มันเท่มาก

NEXTZY Logo
NEXTZY
48/27 Ratchadaphisek Rd, Samsen Nok, Huai Khwang, Bangkok 10310

Base at Thailand

Thailand

Home

Crews

Success

Download press kits

Knowledges

Chat

Talk with team

SCHEDULE