วิธีการเปลี่ยนสีของไฮเปอร์ลิงก์ textview?


279

ฉันใช้รหัสนี้เพื่อเชื่อมโยงหลายมิติ:

<TextView 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:id="@+id/hyperlink" 
    android:text="@string/hyperlink"
    android:autoLink="web"/>

ตามค่าเริ่มต้นจะแสดงเป็นสีน้ำเงิน แต่ฉันจะเปลี่ยนสีของไฮเปอร์ลิงก์ใน Android ได้อย่างไร

คำตอบ:


659

เพิ่มandroid:textColorLink="yourcolorhere"ของคุณTextView


11
สิ่งนี้ได้ผลขอบคุณandroid:textColorLink="@android:color/white"
super

จะแสดงลิงค์เป็นชื่อเรื่องของสิ่งButtonที่สืบทอดมาจากandroid:Widget.Holo.Light.Button.Smallไหน ฉันจะเปลี่ยนสีข้อความของลิงค์เมื่อกดปุ่มได้อย่างไร?
JJD

ค้นหาคำตอบง่าย ๆ และมองไปที่ชั้นเรียน Spannable .. ขอบคุณมากสำหรับคำตอบง่ายๆนี้!
Bryner


14

คุณสามารถใช้กับไฟล์ XML ของคุณ:

android:textColorLink="Code" 

"รหัส" สามารถเป็นเช่น#ff0000หรือ @ color / red

คุณสามารถใช้กับรหัส JAVA ของคุณ:

tv.setLinkTextColor(color);

สีสามารถเป็นเช่นColor.REDหรือColor.parseColor("#ff0000");


12

คุณต้องใช้android:textColorLink="#000000"ตำแหน่งที่000000เป็นรหัสฐานสิบหกของสีของคุณ หวังว่ามันจะช่วย


4

คุณยังสามารถเปิด colors.xml และเปลี่ยนสีต่อไปนี้เป็นสิ่งที่คุณต้องการ:

<color name="colorAccent">#FF4081</color>

3

ถ้าใครต้องการรู้ค่า hex สำหรับสีน้ำเงินนี้มันคือ # 7bc9c2

ฉันใช้ Eye Dropper เพื่อค้นหาสิ่งนี้เนื่องจากฉันไม่พบเอกสารใด ๆ เลยมันไม่ได้อยู่ใน Google Color Palatte อยู่ดี:

https://www.google.com/design/spec/style/color.html#color-color-palette



1

ในไฟล์ xml ของTextViewแท็ก:

android:autoLink="web" //link the content of web  
android:textColorLink="#FFFFFF" //change the color of the link 

1

เพิ่ม Lines of code เหล่านี้ลงtextviewในXMLไฟล์ของคุณและมันจะทำงานได้อย่างสมบูรณ์แบบ

android:autoLink="web"
 android:textColorLink="@android:color/holo_orange_dark"
 android:linksClickable="true"
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.